【发布时间】:2012-06-08 20:02:57
【问题描述】:
我想检查一个列(mysql)是否存在。如果没有,mysql 应该从肯定存在的列中获取值。我的查询看起来像这样,但它不起作用:
IF NOT EXISTS (SELECT `en` FROM `HP_strings`
WHERE `name`='copyright' AND `group`='system')
THEN
SELECT `default` FROM `HP_strings`
WHERE `name`='copyright' AND `group`='system';
我也试过
IFNULL((SELECT `en` FROM `HP_strings`
WHERE `name`='copyright' AND `group`='system'),
(SELECT `default` FROM `HP_strings`
WHERE `name`='copyright' AND `group`='system'));
相同的结果(错误)
编辑:'en' 不存在。我想知道它是否存在。
【问题讨论】:
-
需要澄清:您真的要检查列是否存在,或者列值是否为
NULL? -
如果它存在。没有“en”列。
-
不要那样做。我认为这是不可能的。
-
@user1435792,你的意思是没有名为
en的列,你真的想检查你的表中是否存在任何列en? -
@user1435792,我已经编辑了我的帖子;看看这是否有帮助。
标签: mysql select if-statement exists ifnull