同一列我有一个这样的表:得到列和最大值为特定的记录,同时
_id integer
column_1 text
column_2 integer
我想如果_id = 1
,如果不存在获得最大拿到column_2
值为column_2
SELECT max(column_2), column_2
where _id = 2
这将失败肯定值,有没有办法让在同一查询的两个值?
同一列我有一个这样的表:得到列和最大值为特定的记录,同时
_id integer
column_1 text
column_2 integer
我想如果_id = 1
,如果不存在获得最大拿到column_2
值为column_2
SELECT max(column_2), column_2
where _id = 2
这将失败肯定值,有没有办法让在同一查询的两个值?
尝试此查询
3210可以使用(存在)的SQL语句
试试这个:
SELECT IFNULL(column_2, (SELECT MAX(column_2) FROM test)) column2
FROM test WHERE id = 1;
如果我得到你的问题的权利可能是这可以帮助你。
select
IF(column_2 IS NULL, X.maxv, column_2)
from test,(select max(column_2) as maxv from test)as X
您的查询不工作http://sqlfiddle.com/#!2/7839c/13,更正您的自我 –
@goodmood检查更新的答案。 –
现在你得到+1,。 –