标签: mysql
我想知道如果在MySQL本身(没有PHP),你能创建一个条件,如果为真,那么SELECT 1,2但如果为假则SELECT 1?或者MySQL语法中类似的东西可以达到同样的效果吗?
感谢。
答案 0 :(得分:2)
缺少存储过程,无法有条件地选择一定数量的列。从任何一个SELECT语句返回的列数是静态的。你能做的最好的是有两个CASE语句,一个在某些情况下会返回null。还有两列,但根据你的情况,一列是多余的。
答案 1 :(得分:0)
其实我不确定这是不是你要找的......但请看看
SELECT CASE ("column_name") WHEN "value1" THEN "result1" WHEN "value2" THEN "result2" ... [ELSE "resultN"] END FROM "table_name";
有关此关键字的详细说明,请查看here或here。