1
我面临一个问题,我的查询可以执行,但是当我调用存储过程符合操作数应该包含1列。以上是我查询的一部分如何在MYSQL中使用Like语句?
if p_Opt = 'RETRIEVE-P' THEN
Set @'query' = ('SELECT Company,Branch,user_id,name,priority,email,UserGroup, Status FROM UserAuth WHERE 1=1 ');
If p_Company Is Not Null THEN
Set @'query' = @'query' + ' AND Company LIKE '''+ '%' + p_Company + '%' + '''';
END if;
END IF;
问题是什么?对我的查询是否正确?
感谢它解决我的问题 –
你可以投票给我,如果是正确的 – Pradeep
其实,这工作,但是错误的,因为它很容易受到SQL注入。 MySQL提供'QUOTE()'函数来正确引用文字,如果你坚持连接,并且它理解如何处理NULL。准备好的陈述会更好。 https://dev.mysql.com/doc/refman/5.6/en/string-functions.html#function_quote –