数据库创建
CREATE DATABASE shop;
建表语句
CREATE TABLE Product
(product_id CHAR(4) NOT NULL,
product_name VARCHAR(100) NOT NULL,
product_type VARCHAR(32) NOT NULL,
sale_price INTEGER ,
purchase_price INTEGER ,
regist_date DATE ,
PRIMARY KEY (product_id));
添加字段
ALTER TABLE Product ADD COLUMN product_name_pinyin VARCHAR(100);
字段删除
ALTER TABLE Product DROP COLUMN test_name;
插入数据
START TRANSACTION;
INSERT INTO Product VALUES ('0001', 'T恤','衣服', 1000, 500, '2009-09-20');
INSERT INTO Product VALUES ('0002', '打孔器', '办公用品', 500, 320, '2009-09-11');
INSERT INTO Product VALUES ('0003', '运动T恤', '衣服', 4000, 2800, NULL);
INSERT INTO Product VALUES ('0004', '菜刀', '厨房用具', 3000, 2800, '2009-09-20');
INSERT INTO Product VALUES ('0005', '高压锅', '厨房用具', 6800, 5000, '2009-01-15');
INSERT INTO Product VALUES ('0006', '叉子', '厨房用具', 500, NULL, '2009-09-20');
INSERT INTO Product VALUES ('0007', '擦菜板', '厨房用具', 880, 790, '2008-04-28');
INSERT INTO Product VALUES ('0008', '圆珠笔', '办公用品', 100, NULL, '2009-11-11');
COMMIT;
更改表名字
RENAME TABLE Poduct TO Product;
给字段设置别名
SELECT product_id as '商品编号',
product_name as '商品名称'
from product
常数查询(自定义常数字段)
SELECT '商品' AS string, --字段名为string,内容为‘商品’
38 AS number,
'2009-02-24' AS date,
product_id, product_name
FROM Product;
从结构中删除数据,使用DISTINCT删除某字段中的重复数据
select DISTINCT product_type from Product;
-- 此时null也会被视为某类数据
select distinct purchase_price from product;
算数运算符,注:使用四则运算符(+,-,*,/),null使用运算还是为null
SELECT product_name, sale_price,
sale_price * 2 AS 'sale_price_x2'
FROM Product;
使用select进行计算,不需要from
select (100+200)*3 as cal
比较运算符
-- 筛选价格不等于500的数据:
-- null不能使用比较运算符
SELECT product_name, product_type, sale_price
FROM Product
WHERE sale_price <> 500;
比较运算符和算数运算符的配合使用:
SELECT product_name, sale_price, purchase_price
FROM Product
WHERE sale_price - purchase_price >= 500;
逻辑运算符(not,and和or运算符)
SELECT product_name, product_type, sale_price
FROM Product
WHERE NOT sale_price >= 1000;
通过括号强化处理:通过括号让OR运算符优先于OR运算符执行
SELECT product_name, product_type, regist_date
FROM Product
WHERE product_type = '办公用品'
AND (regist_date = '2009-09-11' OR regist_date = '2009-09-20');