[SQL]-ビュー
1.ビュー
CREATE VIEW 뷰_이름
AS
SELECT 문;
USE market_db;
CREATE VIEW v_member
AS
SELECT mem_id, mem_name, addr FROM member;
![](https://s1.md5.ltd/image/2a8e330afbf36cba910ece05d4c39d66.png)
条件式
SELECT mem_name, addr FROM v_member
WHERE addr IN('서울', '경기');
![](https://s1.md5.ltd/image/5518de44c7ec475e951c71270014faac.png)
2.ビューを使用する理由
保安に役立つ
個人情報が表示されないビューを作成する
複雑なSQLを簡略化できます.
ビューから一般的なクエリーを生成します.
3.ビューの実際の操作
ビューをクエリーするときにカラム名にスペースがある場合は、backtic(`)に囲む必要があります。
USE market_db;
CREATE VIEW v_viewtest1
AS
SELECT b.mem_id "Member ID", m.mem_name AS "Member Name",
b.prod_name "Product Name",
CONCAT(m.phone1, m.phone2) AS "Office Phone"
FROM buy b
INNER JOIN member m
ON b.mem_id = m.mem_id;
SELECT DISTINCT `Member ID`, `Member Name` FROM v_viewtest1;
![](https://s1.md5.ltd/image/91999c01c98e245e6a2917f15364af03.png)
ALTER VIEW v_viewtest1
AS
SELECT b.mem_id '회원 아이디', m.mem_name AS '회원 이름',
b.prod_name "제품 이름",
CONCAT(m.phone1, m.phone2) AS '연락처'
FROM buy b
INNER JOIN member m
ON b.mem_id = m.mem_id;
SELECT DISTINCT `회원 아이디`, `회원 이름` FROM v_viewtest1;
![](https://s1.md5.ltd/image/2397f73dff8cc1783e4070bbd251862a.png)
削除
DROP VIEW v_viewtest1;
CREATE O REPLACE VIEWは既存のビューを上書きする効果があります
USE market_db;
CREATE OR REPLACE VIEW v_viewtest2
AS
SELECT mem_id, mem_name, addr FROM member;
![](https://s1.md5.ltd/image/49b608cb9dd44c0b802771dea7af0a79.png)
DESCRIBE V_VIEWTEST2;
![](https://s1.md5.ltd/image/ab8be4dd073a995d8cf99f1d75c64b4a.png)
ビューソースコードの確認
SHOW CREATE VIEW V_VIEWTEST2;
![](https://s1.md5.ltd/image/a57b8ce51fc0bd44d1f231f5a81f8c46.png)
UPDATE v_member SET addr = '부산' where mem_id='BLK';
ビューからデータを入力するには、ビューに表示されないテーブルの列にNOT NULLがない必要があります.CREATE VIEW v_height167
AS
SELECT * FROM member WHERE height >= 167;
select * FROM v_height167;
WITH CHECK OPTIONを使用して、ビューのキーが167より大きいため、入力データが167を超えることを確認します。
ALTER VIEW v_height167
AS
SELECT * FROM member WHERE height >= 167
WITH CHECK OPTION;
INSERT INTO v_height167 VALUES('TOB', '텔레토비', 4, '영국', NULL, NULL, 140, '1995-01-01');
![](https://s1.md5.ltd/image/b7bc39b4e9560be6817b5a3625e8d8c9.png)
ビューが参照されている場合でも、テーブルは削除されます。
Reference
この問題について([SQL]-ビュー), 我々は、より多くの情報をここで見つけました https://velog.io/@y7y1h13/SQL-뷰テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol