SELECT cust_name,cust_contact,prod_id
FROM customers,orders,orderitems
WHERE customers.cust_id=orders.cust_id
AND orders.order_num=orderitems.order_num;
SELECT cust_name,cust_contact,prod_id
FROM customers,orders,orderitems
WHERE customers.cust_id=orders.cust_id
AND orders.order_num=orderitems.order_num;
AND prod_id='TNT2';
CREATE VIEW productcustomers AS
SELECT cust_name,cust_contact,prod_id
FROM customers,orders,orderitems
WHERE customers.cust_id=orders.cust_id
AND orders.order_num=orderitems.order_num;
SELECT cust_name,cust_contact
FROM productcustomers
WHERE prod_id='TNT2';
SELECT Concat(RTrim(vend_name),' (',RTrim(vend_country),')')
AS vend_title
FROM vendors;
CREATE VIEW vendorlocation AS
SELECT Concat(RTrim(vend_name),' (',RTrim(vend_country),')')
AS vend_title
FROM vendors;
SELECT * FROM vendorlocation;
SELECT cust_id,cust_name,cust_email
FROM customers
WHERE cust_email IS NOT NULL;
CREATE VIEW customeremails AS
SELECT cust_id,cust_name,cust_email
FROM customers
WHERE cust_email IS NOT NULL;
SELECT * FROM customeremails;
SELECT order_num,prod_id,quantity,item_price,quantity*item_price AS expanded_price
FROM orderitems;
CREATE VIEW orderitemsexpanded AS
SELECT order_num,prod_id,quantity,item_price,quantity*item_price AS expanded_price
FROM orderitems;
SELECT * FROM orderitemsexpanded;
SELECT * FROM orderitemsexpanded WHERE order_num=20005;
关于视图(封装):
视图是一个SQL查询
创建视图:CREATE VIEW 视图名
查看创建视图的语句:SHOW CREATE VIEW 视图名
删除视图:DROP VIEW 视图名
更新视图: 方法1:DROP VIEW 视图名 + CREATE VIEW 视图名
方法2:CREATE OR REPLACE VIEW 视图名
关于存储过程(封装)
创建存储过程:CREATE PROCEDURE 存储过程名(参数列表)
BEGIN
存储过程体
END;
查看创建存储过程的语句:SHOW CREATE PROCEDURE 存储过程名
删除存储过程:DROP PROCEDURE 存储过程名
调用存储过程:CALL 存储过程名(参数列表)
SHOW PROCEDURE STATUS;
DELIMITER // 语句分隔符 //
DELIMITER ; 语句分隔符 ;
DELIMITER //
CREATE PROCEDURE productpricing()
BEGIN
SELECT AVG(prod_price) FROM products;
END//
DELIMITER ;
SHOW CREATE PROCEDURE productpricing;
CALL productpricing();