如果mysql选择查询返回空行,则设置默认值

时间:2017-06-05 23:36:16

标签: php mysql

我在我的php文件中有一个选择查询作为下一个>>

$sql = 'SELECT * 
    FROM notes
    WHERE notes.code_apogee='.$CA.'';

返回一些空行,我应该设置一个默认值<< ' en参加'

我使用IFNULL如下:

SELECT IFNULL( (SELECT *
    FROM notes
    WHERE notes.code_apogee='.$CA') ,'en attend');

但出现错误

 MySQL a répondu: Documentation
#1241 - Operand should contain 1 column(s)

任何帮助?请

1 个答案:

答案 0 :(得分:2)

IFNULL()不会将子选择(在你的情况下是所有列)作为参数,而只是一个(加上else值)。
所以你的查询应该是这样的:

exog_rank = np_matrix_rank(self.exog)
beta = np.ones(exog_rank)

(我刚发明了notes.title& notes.body,你需要用实际的列名替换它)

你当然可以让db只返回NULL并在显示结果时添加'en attend':

SELECT id, 
    IFNULL(notes.title, 'en attend') as title, 
    IFNULL(notes.body, 'en attend') as body 
FROM notes
WHERE notes.code_apogee='.$CA'