やろうとしていることを正確にレイアウトするために最善を尽くします。私は、さまざまなタイプのプロパティ (住宅、商業、コンドミニアム、土地など) に関連する 5 つのテーブルを持つ不動産データベースを使用しています。データベースには、MLS と呼ばれる 1 つのテーブルがあり、これらのテーブルのすべての共通要素を 1 つのテーブルにまとめます。この一般的な MLS テーブルのデータの大部分を含むこれらのテーブルのビューが必要ですが、他のいくつかのテーブルの特定のデータもいくつか含まれています。
RESIDENTIAL テーブルと CONDO テーブルのいずれかに存在するが他のテーブルには存在しない on フィールドを含む例を示します。
疑似コードで
MLSTABLE、RESIDENTIALTABLE、CONDOTABLE から MLSNUMBER を選択 (residential.CommunityAmenities OR cond.CommunityAmenities)
ここに私が試している実際のコードがありますが、CommunityAmenities (およびその他のフィールド) が複数のテーブルに存在するため、あいまいな列名エラーが発生します。
USE lsh_retsdata;
SELECT
'',
mls.mlsnum,
mls.propertyclassid,
'',
mls.streetnumber,
mls.streetname,
'',
mls.areaid,
mls.streetletter,
'',
mls.StreetAddressDisplay,
mls.remarks,
mls.remarks,
mls.city,
mls.STATE,
'',
mls.zipcode,
mls.countyid,
"US",
mls.latitude,
mls.longitude,
mls.listprice,
'',
'',
mls.taxamount,
'',
totalbedrooms,
totalfullbaths,
mls.sqfttotal,
'',
mls.acres,
mls.yearbuilt,
mls.heatingsystem,
mls.coolingsystem,
heatingsource,
mls.garagedescription,
mls.garagecapacity,
mls.zoning,
'',
mls.constructiontype,
mls.roofmaterial,
waterfrontdesc,
CONCAT(mls.highschool,CHAR(13),mls.juniorhighschool),
'',
mls.style,
associationfee,
'',
'',
'',
'',
OfficeCoListOfficeName,
'',
CommunityAmenities
FROM rets_property_mls mls
LEFT JOIN rets_property_mul mul
ON mls.mlsnum = mul.mlsnum
LEFT JOIN rets_property_auc auc
ON mls.mlsnum = auc.mlsnum
LEFT JOIN rets_property_com com
ON mls.mlsnum = com.mlsnum
LEFT JOIN rets_property_llf llf
ON mls.mlsnum = llf.mlsnum
LEFT JOIN rets_property_cnd cnd
ON mls.mlsnum = cnd.mlsnum