2016-05-31 5 views
0

私は、彼が住んでいる場所に基づいて顧客のクラスタ番号を見つける作業を手に入れました。例えばMySQLで複数のテーブルのデータを取得する

  1. 顧客テーブル - Teststraße16

  2. アドレステーブル - Teststraße

  3. のクラスタIDを返せ数16

  4. でTeststraße探しそれが可能ならば、クラスタIDからクラスタIDの番号を取得してください。

表住所:

address

表クラスター:

cluster

表カスタマー:

customer

私はあなたにすべてが理解できたと思う。

私はあなたの助けに感謝します!

答えて

0

あなたは直接アドレステーブルに見て、クラスタテーブルとそれに参加することができます:あなたは、すべての顧客についての情報を持っているだけでなく、このテーブルでそれに参加し、where句を削除したい場合は

SELECT c.number 
FROM address AS a 
INNER JOIN cluster AS c 
ON a.cluster = c.id 
WHERE a.street = 'Teststraße' 
    AND a.street_number = 16 

SELECT * 
FROM customer 
INNER JOIN address 
ON customer.street = address.street 
    AND customer.street_number = address.street_number 
INNER JOIN cluster 
ON address.cluster = cluster.id 
+0

フィードバックに感謝します。いいですね!問題は、1からだけでなく、顧客テーブルのすべての通りのクラスタIDを取得する必要があるということです。フィードバックをもう一度お寄せください! – pascallammers

+0

あなたの顧客テーブルにはclusterIdのカラムがありません – chresse

+0

@pascallammers:私も顧客テーブルに加わる追加のSQLステートメントを追加しました – chresse

関連する問題