0

機器の情報を含む 1 つのテーブルと、別の 2 つのリンクされたテーブル 画像を含むデータベースの 2 つのリンクされたテーブルがあります。映像と機材のつながりは、MARCA(ブランド)とMODELO(モデル)の2つのフィールドです。そのため、機器の画像がどの表にあるかを調べる必要があります。null チェックは、一方を見て画像が得られないかどうかをチェックし、次にもう一方を調べます。次のように 1 つだけで問題なく実行できます。

SELECT [Tabela Equipamentos ULSM Geral].*, [Fotografias e Manuais de Equipamentos2].FOTO
FROM [Tabela Equipamentos ULSM Geral] LEFT JOIN [Fotografias e Manuais de Equipamentos2] ON ([Tabela Equipamentos ULSM Geral].MODELO = [Fotografias e Manuais de Equipamentos2].MODELO) AND ([Tabela Equipamentos ULSM Geral].Marca_ = [Fotografias e Manuais de Equipamentos2].MARCA);

しかし、新しいものを追加する必要があるので、ケースを使用していますが、構文エラーが発生します:

SELECT [Tabela Equipamentos ULSM Geral].*, CASE 
WHEN [Fotografias e Manuais de Equipamentos1].FOTO IS  NULL THEN [Fotografias e Manuais de Equipamentos2].FOTO 
ELSE [Fotografias e Manuais de Equipamentos1].FOTO
END AS FOTO
FROM [Fotografias e Manuais de Equipamentos2], [Fotografias e Manuais de Equipamentos1] INNER JOIN ([Tabela Equipamentos ULSM Geral] INNER JOIN [Fotografias e Manuais de Equipamentos2] AS [Fotografias e Manuais de Equipamentos2_1] ON ([Tabela Equipamentos ULSM Geral].MODELO = [Fotografias e Manuais de Equipamentos2_1].MODELO) AND ([Tabela Equipamentos ULSM Geral].Marca_ = [Fotografias e Manuais de Equipamentos2_1].MARCA)) ON ([Fotografias e Manuais de Equipamentos1].MODELO = [Tabela Equipamentos ULSM Geral].MODELO) AND ([Fotografias e Manuais de Equipamentos1].MARCA = [Tabela Equipamentos ULSM Geral].Marca_);

では、CASEで何が間違っているのでしょうか?

編集: Iif に変更すると、次のようになりました。

SELECT [Tabela Equipamentos ULSM Geral].*, 
IIf([Fotografias e Manuais de Equipamentos2].FOTO IS  NULL,[Fotografias e Manuais de Equipamentos1].FOTO, [Fotografias e Manuais de Equipamentos2].FOTO  ) 
FROM [Fotografias e Manuais de Equipamentos2], [Fotografias e Manuais de Equipamentos1] INNER JOIN ([Tabela Equipamentos ULSM Geral] INNER JOIN [Fotografias e Manuais de Equipamentos2] AS [Fotografias e Manuais de Equipamentos2_1] ON ([Tabela Equipamentos ULSM Geral].MODELO = [Fotografias e Manuais de Equipamentos2_1].MODELO) AND ([Tabela Equipamentos ULSM Geral].Marca_ = [Fotografias e Manuais de Equipamentos2_1].MARCA)) ON ([Fotografias e Manuais de Equipamentos1].MODELO = [Tabela Equipamentos ULSM Geral].MODELO) AND ([Fotografias e Manuais de Equipamentos1].MARCA = [Tabela Equipamentos ULSM Geral].Marca_);

それが役立つ場合は、これが構造ビューの画像です

構造図

エラーはありませんが、クエリの結果は空白です。

4

0 に答える 0