Mysql SQL运行命令(如果行存在)
我是MySQL新手,我正在尝试使用以下伪代码: 选择如果 EXISTSSELECT*从“email`=admin和“token`=blabla”的用户中选择, 从某个表中更新*,其中'var`=不重要, 未经授权; 我试图实现的是基于行的存在运行代码,如果行不存在,则返回一条消息或一些可用的内容。如果它确实存在,请运行另一个SQL命令,然后返回这些结果Mysql SQL运行命令(如果行存在),mysql,sql,Mysql,Sql,我是MySQL新手,我正在尝试使用以下伪代码: 选择如果 EXISTSSELECT*从“email`=admin和“token`=blabla”的用户中选择, 从某个表中更新*,其中'var`=不重要, 未经授权; 我试图实现的是基于行的存在运行代码,如果行不存在,则返回一条消息或一些可用的内容。如果它确实存在,请运行另一个SQL命令,然后返回这些结果 这可能吗?您的意图有点难以从无效语法中理解。但你问题的要点是你可以使用where子句: 也可以将其表示为联接。假设子查询最多返回一行: UPD
这可能吗?您的意图有点难以从无效语法中理解。但你问题的要点是你可以使用where子句: 也可以将其表示为联接。假设子查询最多返回一行:
UPDATE sometable t CROSS JOIN
(SELECT 1
FROM users
WHERE email = 'admin' AND token = 'blablabla'
LIMIT 1
) x
SET . . .
WHERE var = 'notimportant' ;
更新*应该是什么?是的!这就是我要找的!我不知道你可以使用,如果它与数据无关。非常感谢。嗯。。。。看起来MySQL正在执行并存在,从用户中选择1,其中电子邮件='admin'和令牌='blabla'匹配每一行,是否有办法扭转这种局面?
UPDATE sometable t CROSS JOIN
(SELECT 1
FROM users
WHERE email = 'admin' AND token = 'blablabla'
LIMIT 1
) x
SET . . .
WHERE var = 'notimportant' ;