あなたのテーブルのスキーマは表示されませんでした。それはあなたを助けることよりも困難になります。
- あなたのテーブルを誤って設計されています
あなたがcar1
列またはcar2
列または...を取得しようとしている場合は、少なくとも二つの問題があります。
- クエリの一部として列(またはテーブル)の名前を構築することはできません。
お客様の車のそれぞれに関する情報を、顧客に関する情報とは別の表に記載する必要があります。したがって、顧客の名前が「Joe」であるという情報は1つのテーブルに属する。彼がランボルギーニを運転するという事実は、別のテーブルに記録する必要があります。顧客ごとに車のテーブルに複数のレコードが存在する可能性があります。
また、2つのテーブルを結合する必要があります。あなたの構文的に間違ったクエリはそれを試みません。
Customers_Cars
に何らかの種類の「顧客」列があるかもしれませんが、表示されていません。実際、各テーブルに「顧客ID」列があるはずです。さらに、Customers_Cars
テーブルはただ次のようになります。
- Customers_Cars:得意先は、CarNumは、CarInfo、この中
MainVehicleは、私がMainVehicle
を仮定していることはブール値のフラグであり、1があること顧客ごとに真のタグが付けられます。
あなたのSELECT文では、次のようになります。
SELECT U.*,
C.CarInfo
FROM Customers AS U
JOIN Customers_Cars AS C ON C.CustomerID = U.CustomerID
WHERE C.MainVehicle = TRUE
AND U.Customer = 'Joe'
AND U.Type = 'CoolCustomer';
ので、何があなたがまあ、それだけでは動作しません – Satya
エラーになっているされています。 – Stewie
あなたはこのセグメントcustomers_cars.car(SELECT main_vehicle FROM customers from WHERE customer = 'Joe')を見て、誤りを修正します – Satya