SQL create view ステートメントを作成していますが、最後に記述しなければならないステートメントに問題があります。このステートメントでは、intersect を使用して、30 歳以上で身長が 65 インチ以上の人を取得する必要があります。クエリの正確な詳細は次のとおりです。
- 体組成表に記載されている 30 歳以上のすべての人の姓名を返すクエリを作成します。次に、INTERSECTS を使用して 30 歳以上で身長が 65 インチを超えるすべての人を返すようにクエリを変更します。
別のテーブルから名前を取得するために交差と内部結合を使用してこのビュー ステートメントを記述しようとしましたが、プログラムを実行しようとするとエラーが発生します。私が得るエラーは
エラー: "WHERE"
行 11 またはその近くに構文エラーがあります: WHERE b.height = 65;
プログラム全体を投稿するつもりはありません。この create view ステートメントだけを投稿するので、行番号はオフになります。コードを投稿してから、このビュー ステートメントを作成するために使用している 2 つのテーブルを投稿します。誰かがこのエラーを修正するのを手伝ってくれることを願っています。前もって感謝します。
CREATE VIEW intersectt AS
SELECT
a.fname, a.lname
FROM
what.person as a
INNER JOIN
what.body_composition as b ON a.pid = b.pid
WHERE
b.age > 30
INTERSECT
SELECT
a.fname, a.lname
FROM
what.person as a
INNER JOIN
what.body_composition as b
WHERE
b.height = 65;
ここに2つのテーブルがあります
表what.body_composition:
Column | Type | Modifiers
--------+---------+-----------
pid | integer | not null
height | integer | not null
weight | integer | not null
age | integer | not null
とテーブルwhat.person:
Column | Type | Modifiers
--------+-----------------------+-----------------------------------------------
pid | integer | not null default nextval('person_pid_seq'::reg class)
uid | integer |
fname | character varying(25) | not null
lname | character varying(25) | not null