mysql - 两种方式连接mysql查询

标签 mysql join

message table

id    user_id| message
 1       1   | this is my cruel message
 2       1   | this is my happy message
 3       2   | this is happy messgae    

message_tags table

id    message_id| tags
 1       2      | happy
 2       3      | happy

我想要访问带有标签happy的所有消息,如何以最佳方式构建查询:))谢谢

附:这只是一个示例数据库

最佳答案

select m.id, m.user_id, m.message,
    u.Username 
from message m
inner join user_table u on m.user_id = u.id
where m.id in (select message_id from message_tags where tags = 'happy')

关于mysql - 两种方式连接mysql查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3779550/

相关文章:

MySQL:识别重复数据

mysql - MySQL表保存统计数据的最佳结构

php - MySQL 查询 : find the category id in the products table, 但是 id 被包装成 `&12&`

postgresql - 在 PostgreSQL 中连接多个表,并计算连接表的行数

MySQL - 添加 WHERE 子句时 LEFT JOIN 失败

javascript - 带有与 jquery 冲突的段落(下一行)的文本区域

MySQL 并不总是在相同的查询中使用一个键

sql - 这种类型的连接在最后被限定时被称为什么?

android - SQLite COUNT JOIN DISTINCT

mysql - 获取表中没有的记录(MySQL)