2016-04-08 17 views
0

Ich versuche, die COUNT mit drei Tabellen mit einer einzigen Abfrage (mit WHERE Bedingungen) auszuwählen.Wählen Sie COUNT mit drei Tabelle - mysql

Hier ist mein Code, der nicht richtig funktioniert.

SELECT t1.count(id) AS car_model_count,t2.count(id) AS list_item_count,t3.count(id) 
    FROM `car_model` AS t1 
    INNER JOIN `list_item` AS t2 
    INNER JOIN `part_item` AS t3 
    WHERE t1.user_id=3; 
+0

und was die Beziehungen zwischen diesen Tabellen (parent <> Ausland)? Dein Join ist falsch - Du bist mit was verbunden? Probendaten besser aus allen Tabellen und der gewünschten Ausgabe bereitstellen. – mitkosoft

+0

Keine Verwendung eines Fremdschlüssels, aber user_id ist für alle Tabellen üblich. –

+0

Sie verpassen 'on' Klauseln. Beheben Sie die Abfrage. –

Antwort

1

möglich Sub-Query OR UNION Verwendung ist möglich, die COUNT aus mehrere Tisch zu bekommen. Diese Abfrage:

SELECT 
    (SELECT count(*) FROM `car_model` WHERE user_id=3) AS car_model_count, 
    (SELECT COUNT(*) FROM `list_item` WHERE user_id=3) AS list_item_count, 
    (SELECT count(*) FROM `part_item` WHERE user_id=3) AS part_item_count; 
+0

Danke Herr Seine Arbeit richtig. –

+0

so können Sie +1 wählen, wenn die Antwort nützlich ist .. –