文章目录
一、创建两个表
1、创建一个location的表
create table localtion (Region char(20),Store_Name char(20));
insert into localtion values(‘East’,‘Boston’);
insert into localtion values(‘East’,‘New York’);
insert into localtion values(‘West’,‘Los Angeles’);
insert into localtion values(‘West’,‘Houston’);
2、创建一个Store_Info的表
create table Store_Info (Store_Name char(20),Sales int(10),Date char(10));
insert into Store_Info values(‘Los Angeles’,‘1500’,‘2020-12-05’);
insert into Store_Info values(‘Houston’,‘250’,‘2020-12-07’);
insert into Store_Info values(‘Los Angeles’,‘300’,‘2020-12-08’);
insert into Store_Info values(‘Boston’,‘700’,‘2020-12-08’);
二、SELECT 查询资料
1、显示表格中一个或数个栏位的所有资料
SELECT 列名 FROM 表名;
select Store_Name from localtion;
2、不显示重复资料–DISTINCT
SELECT DISTINCT 列名 FROM 表名;
select distinct Store_Name from Store_Info;
3、有条件的查询–WHERE
SELECT 列名 FROM 表名 WHERE 搜索条件;
select Sales from Store_Info where Sales = 300;
4、且和或–AND OR
SELECT 列名 FROM 表名 WHERE 搜索条件 (AND或OR)搜索条件;
select Sales from Store_Info where Sales>250 and Sales<1500;
5、显示已知值得资料–IN
SELECT * FROM 表名 WHERE IN (搜索值1,搜索值2);
select * from Store_Info where Sales in (300,250);
6、显示连个值范围内的资料–BETWEEN
SELECT 列名(或*)FROM 表名 WHERE 列名 BETWEEN 范围值1 AND 范围值2;
select * from Store_Info where Sales between 300 and 1500 ;
7、通配符–通常与LIKE搭配使用
% : 百分号表示零个、一个或多个字符
_ : 下划线表示单个字符
‘A_Z’: 所有以’A’起头,另一个任何值的字符,且以’Z’为结尾的字符串。例如,‘ABZ’ 和’A2Z’都符合这一个模式,而’AKKZ’ 并不符合
‘ABC%’: 所有以’ABC’ 开头的字符串。 例如,‘ABCD’ 和’ABCABC’ 都符合这个模式。
‘%XYZ’: 所有以’XYZ’ 结尾的字符串。 例如,‘WXYZ’ 和’ZZXYZ’ 都符合这个模式。
‘%AN%’: 所有含有’AN’这个模式的字符串。例如,‘LOS ANGELES’和’SAN FRANCISCO’ 都符合这个模式。
‘_AN%’: 所有第二个字母为’A’ 和第三个字母为’N’ 的字符串。例如,‘SAN FRANCISCO’ 符合这个模式,而’LOS ANGELES’则不符合这个模式。
8、匹配一个模式来找出我们所要的资料–LIKE
SELECT 列名(或*)FROM 表名 WHERE 列名 LIKE ‘通配符的搜索条件’;
select * from Store_Info where Store_Name like ‘%ge%’;
9、按关键字排序–ORDER BY
SELECT 列名(或者*)FROM 表名 WHERE 搜索条件 OREDER BY 列名 (ASC/DESC);
#ASC 升序
#DESC 降序
select Store_Name,Sales,Date from Store_Info order by Sales ASC;
三、函数
1、数学函数
函数 | 作用 |
---|---|
abs(x) | 返回x的绝对值 |
rand() | 返回0到1的随机数 |
mod(x,y) | 返回x除以y以后的余数 |
power(x,y) | 返回x的y次方 |
round(x) | 返回离x最近的整数 |
round(x,y) | 保留x的y位小数四舍五入后的值 |
sqrt(x) | 返回x的平方根 |
truncate(x,y) | 返回数字x截断为y为小数的值 |
ceil(x) | 返回大于或等于x的最小整数 |
floor(x) | 返回大于或等于x的最大整数 |
greatest(x1,x2…) | 返回集合中最大的值 |
least(x1,x2…) | 返回集合中最小的值 |
例: