我有两张桌子。
页
+-----------+----------+------------+
| ID | title | URL |
+-----------+----------+------------+
| 1 | test | test.html |
| 2 | test2 | test2.html |
+-----------+----------+------------+
文件
+-----------+----------+------------+
| ID | page_id | name |
+-----------+----------+------------+
| 10 | 1 | a.jpg |
| 11 | 1 | b.jpg |
| 12 | 2 | c.jpg |
+-----------+----------+------------+
如何从PAGES中选择一行和FILES多行?
我的查询为:
select * from pages,files WHERE (pages.id = page_id) AND (url='$url')
以上查询的输出:
test
a.jpg
我需要的输出:
test
a.jpg
b.jpg
答案 0 :(得分:1)
这更像是一个sql问题,而不是与PHP有关的任何问题 我认为这就是你想要的,但我对你的措辞不确定。
SELECT pages.title, files.name
FROM pages
INNER JOIN files ON pages.id = files.page_id
WHERE (pages.url='$url')
GROUP BY files.name;
答案 1 :(得分:0)
像这样的东西
SELECT
Files.Name
FROM Files
INNER JOIN Pages ON Files.page_id = Pages.Id
WHERE Pages.url = '$url'
UNION ALL
SELECT
Pages.title
FROM Pages
WHERE Pages.url = '$url'