2013-08-05 2 views
0

Я изо всех сил старался найти решение следующей ситуации. У меня есть 4 таблицыmysql multi table SELECT с условиями

Table 1 
product_id|product_name 

Table 2 
Review_id|listing_name|rating|content|product_id|user_id 

Table3 
user_id|user_name| 

Table 4 
user_id|rank| 

product_id имеет то же значение, по всей таблице 1 и таблицы 2 user_id имеют одинаковые значения по всей таблице 2, 3, 4

мне нужна помощь в получении следующего заявления в один массив

SELECT review_id, rating, content, user_name, rank FROM T2, T3, T4 WHERE    product_id=$pid and WHERE T3.user_id = T2.user_id 

Мой массив должен выглядеть следующим образом:

$arr[review_id] = $row[review_id] 
$arr[rating] = $row[rating] 
$arr[content] = $row[content] 
$arr[user_name] = $row[user_name] 
$arr[rank] = $row[rank] 

Вся помощь будет значительно appriciated

ответ

1
SELECT T2.review_id, T2.rating, T2.content, T3.user_name, T4.tank 
    FROM T2 
    INNER JOIN T3 
     ON T2.user_id = T3.user_id 
    INNER JOIN T4 
     ON T2.user_id = T4.user_id 
    WHERE T2.product_id = $pid 
+0

PS: Я надеюсь, что ваши таблицы не на самом деле называется T1, T2 и т.д. :) Вы можете использовать псевдонимы таблиц в запросах, если имена таблиц длинные, но в идеале ваши имена таблиц должны содержать описание того, что содержится в таблице. –

+0

Работайте до сих пор. Мои таблицы r, отличные от t1234 – user2510952