我有两个表:引用(顶部)和推文(底部):
tweet_id class_id
------------------
2 1
5 1
6 2
tweet_id text
------------------
1 foo
2 bar
3 baz
4 foobar
5 boobaz
6 foo bar
7 bar baz
我想检索引用表中推文的所有信息。所需的输出是:
tweet_id class_id text
---------------------------
2 1 foo
5 1 foobaz
6 2 foo bar
我现在正在使用:
SELECT r.tweet_id, t.text, r.class_id
FROM tweets t
LEFT JOIN `references` r ON (r.tweet_id = t.tweet_id)
ORDER BY r.tweet_id ASC LIMIT 100
但是在尝试获取tweet_id时,这让我空手而归。但是,会显示文本:
while($tweet = db_fetch_object($result)) {
echo "$tweet->tweet_id $tweet->text"
}
在结果集中(通过phpmyadmin检查),每条记录的tweet_id和class_id为NULL。我做错了什么?
答案 0 :(得分:1)
没关系:-)我应该LEFT JOIN
'反之亦然:
SELECT r.tweet_id, r.class_id, t.text
FROM `references` r
LEFT JOIN tweets t ON (r.tweet_id = t.tweet_id)
ORDER BY r.tweet_id ASC LIMIT 100