1. 程式人生 > >一個欄位同時滿足多個條件的查詢

一個欄位同時滿足多個條件的查詢

構造一個如下圖所示的表:


№_001: 建立表 tb_a

DROP TABLE tb_a CASCADE CONSTRAINT;
COMMIT;
CREATE TABLE tb_a(
model_name varchar2(10),
parts_name varchar2(15));
COMMIT;

№_002: 匯入資料
INSERT INTO tb_a (model_name, parts_name) VALUES ('飛機','輪胎');
INSERT INTO tb_a (model_name, parts_name) VALUES ('飛機','座椅');
INSERT INTO tb_a (model_name, parts_name) VALUES ('飛機','機翼');
INSERT INTO tb_a (model_name, parts_name) VALUES ('飛機','玻璃');
INSERT INTO tb_a (model_name, parts_name) VALUES ('汽車','輪胎');
INSERT INTO tb_a (model_name, parts_name) VALUES ('汽車','座椅');
INSERT INTO tb_a (model_name, parts_name) VALUES ('汽車','玻璃');
INSERT INTO tb_a (model_name, parts_name) VALUES ('自行車','輪胎');
INSERT INTO tb_a (model_name, parts_name) VALUES ('自行車','座椅');
INSERT INTO tb_a (model_name, parts_name) VALUES ('自行車','方向盤');
COMMIT;

查詢要求:

查詢含有“輪胎”、“座椅”、“玻璃” 三個配件的裝置
SELECT x.model_name
FROM tb_a x
WHERE x.parts_name IN ('輪胎','座椅','玻璃') --限制三個配件
GROUP BY x.model_name
HAVING COUNT(*)=3 --關鍵語句