[英]PHP MySQL inner join multiple values
我得到這個表:
表用戶 :
| userid | nickname | profilpic |
|33460794335580| KING_ED |5435345345.jpg|
|86426315360152| Caro010716 |654664656.jpg |
表nachrichten :
| file | user1 | user2 |
|33460794335580_86426315360152 | 33460794335580 |86426315360152 |
我使用以下代碼從user1獲取昵稱和配置文件:
$myid = 33460794335580;
$msgquery = mysqli_query($con, "SELECT
user.nickname,user.profilpic,nachrichten.user1,nachrichten.user2
FROM user
INNER JOIN nachrichten ON nachrichten.user1 = user.userid
WHERE nachrichten.file LIKE '%$myid%'");
while($daten = mysqli_fetch_assoc($msgquery))
{
echo 'The user-id ' . $daten['user1'] . ' got the Nickname: ' . $daten['nickname'] . ' and profilpic is: ' . $daten['profilpic'] . '<br/>';
echo 'The user-id ' . $daten['user2'] . ' got the Nickname: ' . ???????????????? . ' and profilpic is: ' . ?????????????? . '<br/>';
}
但是如何從user2中獲得昵稱和個人檔案?
您可以為第二個用戶添加另一個與用戶表的聯接
SELECT
u.nickname nickname1,
u.profilpic profilpic1,
u1.nickname nickname2,
u1.profilpic profilpic2,
n.user1,
n.user2
FROM
nachrichten n
INNER JOIN user u
ON n.user1 = u.userid
INNER JOIN user u1
ON n.user2 = u1.userid
WHERE ....
Demo
嘗試這個:
SELECT u1.nickname AS user1_name,u1.profilpic AS user1_pic, u2.nickname AS user2_name, u2.profilpic AS user2_pic
FROM nachrichten n
INNER JOIN user u1 ON n.user1 = u1.userid
INNER JOIN user u2 ON n.user2 = u2.userid
WHERE nachrichten.file LIKE '%$myid%'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.