0

以下の SQL ステートメントを使用して、3 つのテーブルからデータを取得しようとしています。ただし、[aren1002] の近くで構文エラーが発生します。

select
holiday_notes.*,
HOLIDAY_REF.holiday_name as holiday_name from [aren1002].[HOLIDAY_NOTES]
left join [aren1002].[HOLIDAY_REF] on holiday_notes.holiday_id=HOLIDAY_REF.holiday_id

[aren1002].[lookup].lookup_desc as type_desc from [aren1002].[HOLIDAY_NOTES]
left join [aren1002].[lookup] on holiday_notes.[type]=lookup.lookup_id

where [HOLIDAY_NOTES].delete_date is null order by [HOLIDAY_NOTES].create_date desc

HOLIDAY_REF から holiday_name 列を追加し、2 番目のテーブル (ルックアップ) から type_desc を追加しようとしています。ステートメントを構成する方法が完全にはわかりません。

4

3 に答える 3

3

SELECT選択する列は、クエリの部分の直後に配置する必要があり、次にFROM句を結合基準とともに配置します。WHEREその後、句を入れることができます。

select
holiday_notes.*,
HOLIDAY_REF.holiday_name as holiday_name,
[aren1002].[lookup].lookup_desc,
[aren1002].[lookup].type_desc

from [aren1002].[HOLIDAY_NOTES]
left join [aren1002].[HOLIDAY_REF] on holiday_notes.holiday_id=HOLIDAY_REF.holiday_id
left join [aren1002].[lookup] on holiday_notes.[type]=lookup.lookup_id
where [HOLIDAY_NOTES].delete_date is null order by [HOLIDAY_NOTES].create_date desc
于 2013-10-02T15:38:49.650 に答える
1

余分なものFROMがあります。

これを試して

select
holiday_notes.*,
HOLIDAY_REF.holiday_name as holiday_name,
[aren1002].[lookup].lookup_desc as type_desc
 from [aren1002].[HOLIDAY_NOTES]
left join [aren1002].[HOLIDAY_REF] on holiday_notes.holiday_id=HOLIDAY_REF.holiday_id
left join [aren1002].[lookup] on holiday_notes.[type]=lookup.lookup_id
where [HOLIDAY_NOTES].delete_date is null order by [HOLIDAY_NOTES].create_date desc

選択ステートメントは通常、次のパターンに従います。 SELECT 必須フィールド FROM テーブル(オプション)JOIN 他のテーブルへの結合ステートメント WHERE 条件

于 2013-10-02T15:39:29.467 に答える
0

私はSQLの第一人者ではありませんし、テストをすぐにセットアップできるシステムにも属していないため、これは完全に間違っている可能性があります。

しかし、最初にすべての SELECT を実行してから、FROM と JOIN を指定する必要があると確信しています。

したがって、次のようなものが必要だと思います。

選択し、holiday_notes.*、HOLIDAY_REF.holiday_name を holiday_name、[aren1002].[lookup].lookup_desc を [aren1002] から type_desc として選択します。 are1002].[lookup] on holiday_notes.[type]=lookup.lookup_id ここで、[HOLIDAY_NOTES].delete_date は null です [HOLIDAY_NOTES].create_date desc による順序

于 2013-10-02T15:47:00.217 に答える