2016-03-28 19 views
1

aynı masalarda katılır: enter image description hereİki Ben 2 tablolar katılarak verileri göstermek için çalışıyorum

tablo users ben yani tmn1 ve tmn2 ekipman parçaları var.

Gerçek ekipman tablosunda, tüm ekipmanların ayrıntılarına sahibim. enter image description here

Bir kullanıcı TM1'e göre oturum açtığında, TM2 numaraları, kullanıcının kimliğinden ve ekipman tablosundakilere karşılık gelen ayrıntılardan ve gösterilmesi gereken ayrıntılardan alınmalıdır. Aynı masada 2 sql birleştirmeyi kullanmayı denedim ama bir hata attı. Herhangi bir yardım takdir edilecektir.

Örneğin, kimliği 1 olan kullanıcı günlüğe kaydedilir. Kullanıcı, TS1234 ve TM2 olarak TC1234 olarak tmn1'e sahiptir, bu yüzden hesap sayfasında TS1234, TC1234'ün ayrıntıları 2. tablodan çekilmek zorundadır ve gösterilmesi gerekmektedir.

$queryEqipmentBought = "SELECT equipment.equipment_name, equipment.number_of_parts 
         FROM equipment 
         RIGHT JOIN user_table ON equipment.tm_number = user_table.tmn1 
         RIGHT JOIN user_table ON equipment.tm_number = user_table.tmn2"; 

Şimdiden teşekkürler.

cevap

2
Sen sorguya aşağıda kullanabilirsiniz

...

$queryEqipmentBought="SELECT * FROM equipment 
RIGHT JOIN user_table ON equipment.tm_number IN (user_table.tmn1,user_table.tmn2) 
WHERE user_table.user_email = '".$user_email1."' "; 
+1

Kolay ve daha iyi bir. –

+0

Evet, çünkü @Ram – RJParikh

+0

@Ruchish Parikh için karmaşık yapmanıza gerek yok. Hatalar gitti. Ancak sonuç sadece TM1 sonuçlarını gösterir. TM2 şimdi gösterilmektedir. Herhangi bir şartı kaçırıyor muyum? Tekrar teşekkürler. – Ram

İlgili konular