我有一张桌子。
Merchant(
id (PK,char(15),not null),
name (varchar(22),null),
city(varchar(10),null),
location(varchar(10),null),
state_code(int,null),
country_code(int,null)
)其中city总是NULL,name也是NULL。
有人将这些字段更新为字符串"NULL"。
我怎么才能找到区别呢?
发布于 2013-06-27 11:05:34
您可以像这样修复有问题的行:
UPDATE Merchant
SET city = NULL
WHERE city = 'NULL';
UPDATE Merchant
SET name = NULL
WHERE name = 'NULL';查找带有字符串"NULL"的行
SELECT * FROM Merchant
WHERE city = 'NULL'
OR name = 'NULL';或者找到真正的NULL:
SELECT * FROM Merchant
WHERE city = NULL
OR name = NULL;注意到了所有这些例子:有NULL,还有'NULL'。
发布于 2013-06-27 11:05:32
你可以尝试这样的方法
SELECT *
FROM Merchant
WHERE city = 'NULL'
OR name = 'NULL'这将返回列、城市或列名设置为字符串NULL的所有行。
SELECT *
FROM Merchant
WHERE city IS NULL
OR name IS NULL将返回列城市或列名为空的所有行。
发布于 2013-06-27 11:10:59
更简单的数字用于支付金额(账单):-支付的金额是0(您没有任何需要支付的) amount = 0 -金额可以是100。-(您必须支付100。) amount = 100 -或者金额可以为空,这意味着该金额尚未设置(尚未) amount is null。
括号中的语句将返回给定情况下的true。
所以你看,它不是相同的金额0(没有钱支付)或空(没有设置)。你的绳子也是一样的。它没有被设置或者是一个空字符串。
希望它能帮到你..。;-)
https://stackoverflow.com/questions/17341416
复制相似问题