现在我的表格存在这个问题
Name Practice
Ben Private
Private
我想摆脱第二个私人价值。
我试过了
Update tablename
SET Practice = CASE
WHEN Name LIKE NULL THEN NULL
END
但它通过将我的所有名称值都视为空来回来。
非常感谢任何帮助。
谢谢!
更新
好的,我可能会过度简化我的问题
Name Establishment Practice
Ben Hospital 1 Private
Hospital 2 Private
此外,我在7000个参赛作品表中也有500多个这样的条目。
我希望在这种情况下摆脱第二个私人,因为两个私人值都对应一位医生。
一些医生的名字超过2家医院,因此超过2家医院。
对不正确的沟通感到抱歉。
答案 0 :(得分:0)
您可以使用delete
delete from table_name where name is null and practice='private';
答案 1 :(得分:0)
答案 2 :(得分:0)
您需要删除而不是更新
Delete from tableName where Name is Null
答案 3 :(得分:0)
试一下
UPDATE abc SET practice ='CASE' WHERE name LIKE ''
这不是将名称字段留空的好方法
答案 4 :(得分:0)
LIKE NULL
不会生效,只能NULL
。您必须使用IS NULL
。
示例 :
mysql> select null like null, null is null;
+----------------+--------------+
| null like null | null is null |
+----------------+--------------+
| NULL | 1 |
+----------------+--------------+
这是错误的:
Update tablename
SET Practice = CASE WHEN Name LIKE NULL THEN NULL END
将其更改为:
Update tablename
SET Practice = CASE WHEN Name IS NULL THEN NULL ELSE Practice END