gpt4 book ai didi

php - 如何在删除另一个表中的行之前检查现有行?

转载 作者:行者123 更新时间:2023-11-29 02:20:25 24 4
gpt4 key购买 nike

我有两个表:

// table1                              // table2
+----+------+---------+ +----+------+
| id | col1 | user_id | | id | col2 |
+----+------+---------+ +----+------+
| 1 | a | 100001 | | 1 | a |
| 2 | b | 100002 | | 2 | b |
| 3 | c | 100003 | | 3 | c |
+----+------+---------+ | 4 | a |
| 5 | a |
| 6 | c |
+----+------+

我还有一个名为 $user_id 的变量。现在我想删除 table2col2='a' 的所有行,但我需要检查 table1.user_id = $user_id (在这种情况下 $user_id = '100001' ) 在 table1 中删除之前。

如何使用这个概念编写正确的语法查询:

IF table1.user_id = $user_id where table1.col1 = 'a' then
delete from table2 where col2 = 'a'

我可以使用 PHP 和 MySQL 使用两个单独的查询来做到这一点。但是我想通过一个查询来做到这一点,这可能吗?

最佳答案

您可以使用 JOIN 来执行删除操作,例如

delete t2 from table2 t2
join table1 t1 on t2.col2 = t1.col1
where
t2.col2 = 'a'
and t1.user_id = '100001'

关于php - 如何在删除另一个表中的行之前检查现有行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32810104/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com