首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >帮助编写SELECT语句

问帮助编写SELECT语句
EN

Stack Overflow用户
提问于 2010-09-30 04:55:31
回答 1查看 60关注 0票数 1

我是MySQL的新手,不知道如何编写我个人项目所需的查询。

在这个查询中,我有三个表需要进行对话- books、tags和books_tags (连接表)。

它们的基本结构相当基本--book和tag都有一个id列和一个name列(在book中称为“title”,在标签中称为“tag”)。books_tags表包含book_id和tag_id。

我希望能够编写一个返回如下内容的查询

代码语言:javascript
复制
TITLE      | TAG
--------------------
BOOK ONE   | PHP
BOOK ONE   | MYSQL
BOOK ONE   | OOP
BOOK TWO   | CSS
BOOK TWO   | HTML
BOOK THREE | JAVASCRIPT

你明白了吧。我使用PHP循环和多个查询来做这件事,但是查询计数变得非常高,非常快,变得非常混乱。我想保持它的简洁性和简洁性。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-09-30 04:57:26

代码语言:javascript
复制
select b.title, t.tag
from books b
inner join books_tags bt on b.id = bt.book_id
inner join tags t on bt.tag_id = t.id
order by b.title, t.tag

如果您还想列出没有标签的图书,您可以这样做:

代码语言:javascript
复制
select b.title, t.tag
from books b
left outer join books_tags bt on b.id = bt.book_id
left outer join tags t on bt.tag_id = t.id
order by b.title, t.tag
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3825773

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档