2014-09-05 34 views
-3

我的数据库表结构如下:我想删除FIELD 2列下的所有行,因为它们具有相同的值,在我的数据库设计中将使用相同的值。 请我需要这方面的帮助...删除具有相同列名的多行

/////////////////////////////////////////////// 
    +---+----------+----------+---------+---------+ 
    +ID + FIELD 1 + FIELD 2 + FIELD 3 + FIELD 4 + 
    +---+----------+----------+---------+---------+ 
    + 1 + AAA  + 1234 + ABC + Y  + 
    + 2 + AAA  + 1234 + DEF +   + 
    + 3 + AAA  + 1234 + GHI +   + 
    + 4 + BBB  + 1234 + ABC +   + 
    + 5 + CCC  + 1234 + JKL +   + 
    +---+----------+----------+---------+---------+ 
+3

你究竟想完成什么?删除列下的所有行将会删除表中的所有行,因为每列中的每行都是我们的行。你是否试图删除列,因为它看起来总是一样的?或者你只是试图删除该列是重复值的记录? – 2014-09-05 13:47:42

+0

如果该列可以为空,那么'UPDATE my_database_table SET'FIELD 2'= NULL;' – spencer7593 2014-09-05 15:13:17

+0

是否要删除'Field2'列? – Kami 2014-09-05 15:30:03

回答

1

我相信这应该做的伎俩..

UPDATE table_name SET FIELD2 = NULL 

这将设置所有的该列中的值为NULL(空)

+0

感谢亚历克斯,并为社区成员,我只需要使field2空 – 2014-09-06 05:47:02

+0

Np,很高兴我的帮助:) – Alex 2014-09-06 10:48:45

0

不是100%肯定你的意思,但我想出了两个答案的两个问题你可能会问:

  1. 如果你想删除在域2有一个值的所有行,则:

    DELETE FROM 'table' WHERE field2<>'' 
    
  2. 如果你想从所有行清场2的值,则:

    UPDATE 'table' SET field2='' 
    
0

使用UPDATE,使空值

UPDATE TABLE SET `FIELD 2` = ''; 

UPDATE TABLE SET `FIELD 2` = NULL; 
相关问题