2010-07-09 105 views
0

如何特别从注释表中选择id,user_id,以及如何特别从用户表中选择用户名,日期和帖子?从连接表中选择不同列

这里是代码。

SELECT users.*, comments.* 

回答

2
SELECT c.id, c.user_id, u.username, u.date, u.posts 
    FROM comments c, users u 
    WHERE [something] 
一个很好的参考
+0

什么是C和U? – avoid 2010-07-09 04:19:08

+0

注意评论和用户后的c和u;那些为表格声明“别名”,这使得更容易引用它们。 – 2010-07-09 04:20:14

+0

它被称为别名。它允许您缩短查询中使用的表的名称,或者对具有不同别名的同一个表进行两次调用。 – 2010-07-09 04:21:19

0
"SELECT id, user_id FROM comments"; 
"SELECT username, date, posts FROM users"; 
0

不要忘记使用加入,丹的回答会导致笛卡尔乘积(即表逗号表),如果您不小心忘了把加入条件放在WHERE子句中

SELECT c.id, c.user_id, u.username, u.date, u.posts 
FROM comments c join users u using(user_id) 
WHERE [something] 
0

根据你的问题,我想你不要在其他答案中不知道要在WHERE [something]中输入什么。

SELECT c.id, c.user_id, u.username, u.date, u.posts 
FROM comments c, users u 
WHERE c.user_id = u.id 

假设users表中的用户ID字段被称为id

您也可以使用:

SELECT c.id, c.user_id, u.username, u.date, u.posts 
FROM users u 
INNER JOIN comments c ON c.user_id = u.id 

不管怎么说,这将解决你的问题,但我会推荐一些MySQL的(或SQL一般)读数像MySql Manual