我正在尝试从Roundcube导出数据,它有2个我需要的表,用户和联系人。目前我正在使用它来过滤用户:
SELECT `user_id` FROM `users` WHERE `username` LIKE "%mysite.com%"
但是如何从联系人表格导出数据,user_id
匹配上面过滤的user_id
列表?我必须使用临时表吗?我从未做过加入。我不想要加入的2个表的漂亮列表,我想使用SELECT
子句导出数据来过滤它并重新导入它,所以我需要原始格式的数据。
答案 0 :(得分:2)
您还可以使用子查询:
SELECT *
FROM `contacts`
WHERE `user_id` IN (
SELECT `user_id` FROM `users` WHERE `username` LIKE "%mysite.com%"
)
答案 1 :(得分:1)
如果表格通过user_id
相关,您可以加入:
SELECT c.*
FROM `users` u
INNER JOIN `contacts` c
on u.`user_id` = c.`user_id`
WHERE u.`username` LIKE "%mysite.com%"
如果您需要帮助,请在此处学习加入语法,这是一个很棒的visual explanation of joins