MySQL

2011-01-15 16 views
13

'da iki alt sorguya katıl MySQL'de iki alt sorguda sorun yaşıyorum, ör.MySQL

(select * from table1 where id = 1 group by f1) a1 
join 
(select * from table2 where id = 2 group by f2) a2 ON a1.f3 = a2.f3; 

HATA 1064 (42000): SQL sözdiziminizde bir hata var;

hattı 1 benim dizimi yanlış mı '(id = 2 * tablo1 seçin) katılmak' yakın kullanma hakkı sözdizimi için MySQL sunucu sürümü ile uyumlu kılavuzu?

+0

ne yapmak istiyorsun? – Nishant

+0

Basitleştirilmiş örnek için özür dilerim, SQL'i güncelledim. – Howard

+0

@Howard, eğer bir daha SO'ya geri dönerseniz, cevapları gözden geçirir misiniz ve uygun gördüğünüzde kabul edilen cevabı potansiyel olarak değiştirebilir misiniz? Teşekkürler. –

cevap

3

Kontrol dışarı bazı örnekler

SELECT * FROM table1, table2; 

SELECT * FROM table1 INNER JOIN table2 ON table1.id=table2.id; 

SELECT * FROM table1 LEFT JOIN table2 ON table1.id=table2.id; 

SELECT * FROM table1 LEFT JOIN table2 USING (id); 
+0

Bu cevap için çok teşekkür ederim. Bu soruya varana kadar birkaç günlüğüne boşuna çalışıyorum. – alexy13

+7

Bu, soruyu gerçekten yazılı olarak yanıtlamıyor. Bu soru, iki alt soruyu birleştirmek için google arama ile eşleşiyor. Sonuç olarak @ a_horse_with_no_name'ın cevabı aslında daha iyi uyuyor. –