繁体   English   中英

需要MySQL查询的帮助

[英]Need help with a MySQL query

请帮我解决这个MySQL查询。 我已经玩了很长时间了。 也许它需要一双新鲜的眼睛。

两个表: 会话

locks
--------------
id session_id
--------------
1  sajf4$Jf9422jd
2  2jf*4j2okg9092
3  J8j4j4ffss93o2
------------------

sessions
-------------------------
id              user_id
-------------------------
sajf4$Jf9422jd  14
J8j4j4ffss93o2  14
2jf*4j2okg9092  21
-------------------------

我想删除session = 14的user_id的锁中的所有行

DELETE FROM locks 
WHERE session_id IN (SELECT id FROM sessions WHERE user_id = 14)

DELETE FROM locks WHERE session_id =(SELECT id FROM sessions WHERE user_id = 14);

从session_id所在的锁中删除(select_id来自其中user_id = 14的会话)

没有子查询的另一种方法:

在sessions.id = locks.session_id中使用锁连接会话从锁中删除其中sessions.user_id = 14

DELETE locks, sessions FROM locks INNER JOIN sessions WHERE locks.session_id=sessions.id;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM