我有一个SELECT
语句,如下所示:
SELECT * FROM table1 WHERE column1=COALESCE(:col,column1)
当我在MYSQL中运行此命令并将绑定变量:col
保留为空时,出现错误。因此,基本上,如果:col
为null,则查询将获取所有行,否则查询将仅获取与:col
中的值匹配的行。
我正在MYSQL窗口中运行。
错误是#1064-您的SQL语法有错误;检查 与您的MySQL服务器版本相对应的手册 在第1行的':col1,column1)LIMIT 0,25'附近使用的语法。
我知道这在Oracle中是可能的。由于我是MYSQL的新手,因此出现了问题。
答案 0 :(得分:1)
我要做的就是在查询之前将变量初始化为
set @col1 ='';
我再次运行查询,并返回了所需的结果。