使用if()根据查询结果
问题描述:
我试图使用IF()是MySQL的,其中结构看起来是这样的:使用if()根据查询结果
if(
phone_number LIKE '%992%' (SELECT phone_number FROM db.phonebook WHERE country='UK'),
SELECT xxx FROM xxx WHERE xxx,
SELECT xxx FROM xxx WHERE xxx
)
我想要实现:
IF (if you manage to find a phone number in the 'UK' phonebook that looks like '992'),
THEN (run the following XXX query),
ELSE (run the following YYY query)
这不起作用,语法显然是错误的。 希望你的建议。
答
你不能通过查询做任何事情 - 你可以使用过程来做到这一点 - 但是你不能从查询中返回结果集(你可以返回一个可能包含查询的字符串)。
但是,在你实际从数据库中选择任何东西之前,'phone_number'的含义并不清楚。
也许如果您明确告诉我们您希望在2种可能的情况下运行哪些查询,并且在我们可以提供帮助时phone_number来自哪里。
用你的编程语言做2个查询 – zerkms