我有一张表,这个表有57个字段,我现在需要在每插入一条数据时,对其中的54个数据做标记(0或1)。这点难住我了,请高手解答,这种问题有好的办法么?注:当然不能在这张表中另外再建立54个tinyint的字段。

解决方案 »

  1.   

    没看懂你想实现什么? (不要高估你的汉语表达能力或者我的汉语理解能力)
       建议你列出你的表结构,并提供测试数据以及基于这些测试数据的所对应正确结果。
       参考一下这个贴子的提问方式http://topic.csdn.net/u/20091130/20/8343ee6a-417c-4c2d-9415-fa46604a00cf.html
       
       1. 你的 create table xxx .. 语句
       2. 你的 insert into xxx ... 语句
       3. 结果是什么样,(并给以简单的算法描述)
       4. 你用的数据库名称和版本(经常有人在MS SQL server版问 MySQL)
       
       这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。   
      

  2.   

    insert into 我有一张表 values (123,1,0,1,0,0,1....)这样不就行了?
      

  3.   

    不好意思,我重新说一遍!我现在有一张表:polymerization,这个表一共有57个字段,具体字段我就不列了,太长我要实现:
    insert into polymerization (字段1,字段2,字段3....,字段57) values(值1,值2,.....,值57)其中这57个字段中有54个字段是float型的数据,而且,这54个float型的数据都对应着另外两个数据,也是float型,他们在另一张表中存储着。我现在要实现的是每次插入一条数据,都要对表polymerization中的54个数据进行有效性检查,对比这个数据是不是在给定的本字段的两个数据中,如果是,则做标记0,不是则做标记1。
    这次不知道有没有说清楚,多谢楼上的提意见。
      

  4.   

    还是不太清楚。
    这样说吧 假设5 字段,其中2个对应于你那54个字段。剩下三个是什么?
    create table polymerization (f1 float,f2 float,f3 float,f4float, f5 float);
    如果 insert into polymerization(1,2,3,4,5) 这样行不行,哪个数据不符合要求?
      

  5.   

    create table a 

      id  int10),
      para1 float,
      para2 float,
      para3 float,
        .
        .
        .
      para57 float,
    ) create table b 

      id  int10), 
      foreignKey int(10),
      up float,
      down float,  

    现在我每对a表进行一次插入操作,那么就做一次     down<paran<up的比较,如果比较后,为真,则对这个数据做标记0,如果为假,则对这个数据标记为1。
      

  6.   

    曾想过使用对象存储,可惜mysql好像不支持对象存储,如果存储成二进制流,来回的倒腾太麻烦。
      

  7.   

    假设
    id   foreignKey  up   down
    1     1          51    15 
    2     2          21    11
    3     3          31    25
    4     4          71    55insert into a value (1,33,44,55,66,77,88,99);结果是什么?
      

  8.   


    insert into a value (1,33,44,55,66,77,88,99); 假设你这个里面有8字段,那么
    同样
    id  foreignKey  up  down 
    1    1          51    15 
    2    2          21    11 
    3    3          31    25 
    4    4          71    55 
    5    5          77    55
    6    6          77    55
    7    7          87    90
    8    8          100   110
    有八条记录对应。
    我写出你刚才 
    1,33,44,55,66,77,88,99对应
    1,1,1,0,1,0, 0, 1  
      

  9.   

    我想问问,mysql中有没有类似word或者excel中的插入注释的功能,这样,在每个数据上做个注释。
      

  10.   

    现在我的下下策,只能是在这个表中另外再增加54个字段,这54个字段都对应着前面的54个字段,然后数据类型都设置成tinyint,做标记。这样一个表做下来100多个字段,有点多了。
      

  11.   

    目前据我所知,没有哪个数据库产品有这种功能。你应该再添加54个字段!create table a 

    id  int10),
    para1 float,
    pflg1 int,
    para2 float,
    pflg2 int,
    para3 float,
    pflg3 int
      .
      .
      .
    para57 float,
    pflg57 int
      

  12.   

    今天CSDN老是不稳定,刚刚我回复都不行。
      

  13.   

    呵呵,csdn有时候出现这个毛病,很无语。哈哈
      

  14.   

    字段太多的情况下,创建一个表a(key ,value),key是对应的字段名,value是对应的字段值。