2017-02-22 5 views
0

何らかの理由で、PHPとMySQLで3つのテーブルを正しく結合できません。私のクエリは2で動作しましたが、3ではそれがありませんでした。PHPクエリで3つのテーブルに結合する

select users.username, 
    users.ID, 
    users.currentTime, 
    users.gender, 
    user_ranks.likes as likes, 
    user_ranks.disslikes as diss, 
    profiles.img_url as URL 
from users 
inner join profiles, 
    user_ranks on users.ID = profiles.userID LIMIT 1 
+2

「オン」は1つのみです。 3番目のテーブルはどのように結合しますか? – chris85

答えて

0

あなたはON句で、両方のテーブルを結合する必要があります。

select users.username, 
    users.ID, 
    users.currentTime, 
    users.gender, 
    user_ranks.likes as likes, 
    user_ranks.disslikes as diss, 
    profiles.img_url as URL 
from users 
inner join profiles on users.ID = profiles.userID 
inner join user_ranks on user_ranks.ID = profiles.userID 
LIMIT 1 
+1

うんうん、それは理にかなって、私は2回参加しなければならないことを知りませんでした。ありがとう、非常に高く評価されています。私はstackoverflowできるようにすぐに正しい答えとしてそれをマーク! –

+0

うれしい私は助けることができました! – wogsland

0
SELECT users.username, 
    users.ID, 
    users.currentTime, 
    users.gender, 
    user_ranks.likes as likes, 
    user_ranks.disslikes as diss, 
    profiles.img_url as URL 
FROM users 
INNER JOIN profiles 
    on users.ID = profiles.userID 
INNER JOIN user_ranks 
    on user_ranks.ID = profiles.userID 
LIMIT 1 
+0

'LIMIT'sが多すぎます... – wogsland

0
SELECT 
    users.username, 
    users.ID, 
    users.currentTime, 
    users.gender, 
    user_ranks.likes as likes, 
    user_ranks.disslikes as diss, 
    profiles.img_url as URL 
FROM users 
INNER JOIN profiles ON users.ID = profiles.userID 
INNER JOIN tbl_3 ON users.col = tbl_3.fk 
LIMIT 1 
0

あなたはテーブルごとに参加を行う必要があります。例:

select users.username, 
users.ID, 
users.currentTime, 
users.gender, 
user_ranks.likes as likes, 
user_ranks.disslikes as diss, 
profiles.img_url as URL from users 
inner join profiles on users.ID = profiles.userID 
inner join user_ranks on users.ID= user_ranks.ID LIMIT 1 
関連する問題