我使用此查询的页面类似于" instagram" (不,我不是想建立一个Instagram)
我正在使用此代码
<?php
$query = mysql_query('SELECT * FROM camera_web ORDER BY url ASC LIMIT 50');
while($row = mysql_fetch_array($query)){
echo '<img src="'.$row['url'].'" valign="middle" />'.$row['username'].' <br><hr> <b>'.$row['user_id'].'</b> <i>'.$row['description'].'</i><br />';
}
?>
它显示了表格中的图片&#34; camera_web&#34;还有表中的user_id。
当有人发布照片时我会看到照片而不是用户名,而不是用户名ID,我该如何让查询选择选择&#34;用户名&#34;来自我的&#34;用户&#34;表ID =(user_id)。
如果你不太明白我会前进,我无法解释得更好。
答案 0 :(得分:2)
您使用外键加入两个表
select `user_table_name`.`user`, `camera_web`.`url`
from `camera_web`
left join `user_table_name`
on `user_table_name`.`id` = `camera_web`.`user_id`
order by `camera_web`.`url` asc limit 50
答案 1 :(得分:0)
您只需要LEFT JOIN users
表user_id
:
SELECT cw.* , u.username
FROM camera_web cw
LEFT JOIN users u
ON u.id = cw.user_id
ORDER BY cw.url ASC LIMIT 50
答案 2 :(得分:0)
您需要使用JOIN
,例如:
SELECT c.*, u.username
FROM camera_web c JOIN users u ON c.user_id = u.id
ORDER BY c.url LIMIT 50;
这仍然会同时选择user_id
和username
,如果您不想user_id
,则可以用逗号分隔的字段列表替换c.*
(egcid, c.picture等)。