wordpress 大站,湖北建设人力资源网站,互联网行业分为哪几类,网上国网app下载安装一、高效查询方式
1.1 指定指字段进行查看
事先准备好两张表 select 字段1#xff0c;字段2 from 表名; 1.2 对字段进行去重查看 SELECT DISTINCT 字段 FROM 表名; 1.3 where条件查询 SELECT 字段 FROM 表名 WHERE 条件…一、高效查询方式
1.1 指定指字段进行查看
事先准备好两张表 select 字段1字段2 from 表名; 1.2 对字段进行去重查看 SELECT DISTINCT 字段 FROM 表名; 1.3 where条件查询 SELECT 字段 FROM 表名 WHERE 条件; 1.4 and 和 or 进行逻辑关系的增加 SELECT 字段 FROM 表名 WHERE 条件1 AND 条件2;SELECT 字段 FROM 表名 WHERE 条件1 OR 条件2; 1.5 查询取值列表中的数据 SELECT 字段 FROM 表名 WHERE 字段 IN (值1 值2 ...); #in,遍历一个取值列表 1.6 between的引用 SELECT 字段 FROM 表名 WHERE 字段 BETWEEN 值1 AND 值2; 1.7 like的查询方式 like查询通常会与通配符配合使用 %百分号表示零个、一一个或多个字符 _划线表示单个字符 SELECT * FROM Store_Info WHERE Store_Name like %os%;
SELECT * FROM store_info WHERE Store_Name like _os%; 1.8 排序方式进行查询 order by按关键字排序。 注意 一般对数值字段进行排序。如果对字符类型的字段进行排序则会按首字母排序。 SELECT Store_Name,Sales,Date FROM store_info ORDER BY Sales DESC;
SELECT Store_Name,Sales,Date FROM store_info ORDER BY Sales asc;
#ASC是按照升序进行排序的是默认的排序方式。#DESC是按降序方式进行排序。 二、运用函数查询
2.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,...)返回集合中最小的值
SELECT abs(-1), rand(), mod(5,3), power(2,3), round(1.89);
SELECT round(1.8937,3), truncate(1.235,2), ceil(5.2), floor(2.1), least(1.89,3,6.1,2.1); 2.2 聚合函数
聚合函数含义avg()返回指定列的平均值count()返回指定列中非 NULL 值的个数min()返回指定列的最小值max()返回指定列的最大值sum(字段)返回指定列的所有值之和
SELECT avg(Sales) FROM Store_Info; SELECT count(Store_Name) FROM store_info;
SELECT count(DISTINCT Store_Name) FROM Store_Info;SELECT max(Sales) FROM Store_Info;
SELECT min(Sales) FROM Store_Info;SELECT sum(Sales) FROM Store_Info; 2.3 字符串函数
字符串函数作用trim()返回去除指定格式的值concat(x,y)将提供的参数 x 和 y 拼接成一个字符串substr(x,y)获取从字符串 x 中的第 y 个位置开始的字符串跟substring()函数作用相同substr(x,y,z)获取从字符串 x 中的第 y 个位置开始长度为 z 的字符串length(x)返回字符串 x 的长度replace(x,y,z)将字符串 z 替代字符串 x 中的字符串 yupper(x)将字符串 x 的所有字母变成大写字母lower(x)将字符串 x 的所有字母变成小写字母left(x,y)返回字符串 x 的前 y 个字符right(x,y)返回字符串 x 的后 y 个字符repeat(x,y)将字符串 x 重复 y 次space(x)返回 x 个空格strcmp(x,y)比较 x 和 y返回的值可以为-1,0,1reverse(x)将字符串 x 反转 1去除字符 trim SELECT TRIM ([ [位置] [要移除的字符串] FROM ] 字符串);SELECT TRIM ([ [位置] [要移除的字符串] FROM ] 字符串);#[位置]值可以为 LEADING (起头), TRAILING (结尾), BOTH (起头及结尾)。 #[要移除的字符串]从字串的起头、结尾或起头及结尾移除的字符串。缺省时为空格。 2 截取 substr
SELECT substr(Store_Name,3) FROM location WHERE Store_Name Los Angeles;
SELECT substr(Store_Name,2,4) FROM location WHERE Store_Name New York; 3字段拼接 1concat(x,y)
SELECT concat(Region, Store_Name) FROM location WHERE Store_Name Boston; 2)使用 || 符号
SELECT Region || || Store_Name FROM location WHERE Store_Name Boston; 4返回字符长度 length
select length(name) from city; 5替换 replace
SELECT REPLACE(Region,ast,astern)FROM location; 三、高级查询语句
3.1 GROUP BY用于分组和汇总
对GROUPBY后面的字段的查询结果进行汇总分组通常是结合聚合函数一起使用的 GROUP BY有一个原则凡是在GROUP BY后面出现的字段必须在SELECT 后面出现 凡是在SELECT 后面出现的、且未在聚合函数中出现的字段必须出现在GROUP BY后面。 1汇总统计
select name, count(name) from city group by name; 2汇总并对其指定字段数字类进行累加
select name,sum(name) from city group by name; 3汇总并对其指定字段数字类进行累加再进行降序
select name,sum(name) from city group by name order by sum(name) desc; 3.2 HAVING 过滤 用来过滤由GROUP BY语句返回的记录集通常与GROUP BY语句联合使用。 HAVING语句的存在弥补了WHERE 关键字不能与聚合函数联合使用的不足。 where只能对原表中的字段进行筛选不能对group by后的结果进行筛选。 SELECT Store_Name, SUM(Sales) FROM store_info GROUP BY Store_Name HAVING SUM(Sales) 1500; 3.3 别名设置查询 语法格式 SELECT 字段1,字段2 AS 字段2的别名 from 表名; #AS可以省略不写
1字段别名
SELECT A.Store_Name Store, SUM(A.Sales) Total Sales FROM store_info A GROUP BY A.Store_Name; 2表别名
SELECT 表格别名.字段1 [AS] 字段别名 FROM 表格名 [AS] 表格别名; #AS可以省略不写
3.4 子查询语句
子查询连接表格在WHERE 子句或HAVING 子句中插入另一个SQL语句。 SELECT 字段1 FROM 表格1 WHERE 字段2 [比较运算符] #外查询(SELECT 字段1 FROM 表格2 WHERE 条件) ; #内查询
普通的表数据连接
select * from location A, store_info B where A.Store_NameB.Store_Name;子查询加入表连接
select * from store_info where Store_Name in(select Store_Name from location where Sales 1000); 3.5 EXISTS 用来测试内查询有没有产生任何结果类似布尔值是否为真。如果内查询有结果的话系统就会执行外查询中的SQL语句。若是没有结果的话那整个SQL语句就不会产生任何结果。 格式 SELECT 字段1 FROM 表格1 WHERE EXISTS (SELECT * FROM 表格2 WHERE 条件);SELECT SUM(Sales) FROM store_info WHERE EXISTS (SELECT * FROM location WHERE Region West); 四、表连接查询
MYSQL数据库中常用的表连接有三种 inner join(内连接)只返回两个表中联结字段相等的行有交集的值left join(左连接)返回包括左表中的所有记录和右表中联结字段相等的记录A left join B A为左表B为右表right join(右连接)返回包括右表中的所有记录和左表中联结字段相等的记录A right join B A为左表 B为右表 1 内连接 inner join
SELECT * FROM location A INNER JOIN store_info B on A.Store_Name B.Store_Name ;
SELECT * FROM location A, store_info B WHERE A.Store_Name B.Store_Name;
SELECT A.Region REGION, SUM(B.Sales) SALES FROM location A, store_info B
WHERE A.Store_Name B.Store_Name GROUP BY REGION; 2左连接 left join
SELECT * FROM location A LEFT JOIN store_info B on A.Store_Name B.Store_Name ;3右连接 left join
SELECT * FROM location A RIGHT JOIN store_info B on A.Store_Name B.Store_Name ; 五、view 视图的运用 视图可以被当作是虚拟表或存储查询。 视图跟表格的不同是表格中有实际储存数据记录而视图是建立在表格之上的一个架构它本身并不实际储存数据记录。临时表在用户退出或同数据库的连接断开后就自动消失了而视图不会消失。视图不含有数据只存储它的定义它的用途一般可以简化复杂的查询。 比如你要对几个表进行连接查询而且还要进行统计排序等操作写SQL语句会很麻烦的用视图将几个表联结起来然后对这个视图进行查询操作就和对一个表查询一样很方便。 格式
CREATE VIEW 视图表名 AS SELECT 语句; #创建视图表DROP VIEW 视图表名; #删除视图表
1视图的创建
view V_sales as select store_namee,sum(sales) from store_info group by store_namme;视图创建的数据验证 2 视图提供的后续便捷操作
视图的好处创建视图的过程虽然和高级查询语句通过两个select语句进行组合条件划分生成派生表一样过程是复杂的但是如果该查询操作是需要经常使用的创建视图就很有必要不仅能简化查询过程还能对该查询进行进一步操作而且十分简便。
select store_name from V_sales group by store_name having count(store_name) 1; 3经典定义问题视图能否插入数据
视图能否插入数据要看情况而定
1如果视图表是两个表的连接查询比如视图的A字段来自A表B字段来自B表数据是无法插入的。因为表结构和原表不一致。视图中的字段是根据原表中某个字段通过函数运算产生的新字段而没有真正能够存储的字段所以该数据是无法插入的。
2如果视图表结构与原表保持一致数据是可以插入的插入的数据是存储在原表中视图所更新出的数据其实是映射原表的数据。
六、UNION 联级 UNION联集将两个SQL语句的结果合并起来两个SQL语句所产生的字段需要是同样的数据记录种类。 6.1 UNION合并后去重
生成结果的数据记录值将没有重复且按照字段的顺序进行排序。#合并后去重
格式[select 语句1] UNION [select 语句2];
SELECT Store_Name FROM location UNION SELECT Store_Name FROM store_info; 6.2 UNION ALL合并后不去重
SELECT Store_Name FROM location UNION ALL SELECT Store_Name FROM store_info; 七、交集值与无交集值
7.1 求交集值
SELECT DISTINCT A.Store_Name FROM location A INNER JOIN store_info B USING(Store_Name);SELECT DISTINCT Store_Name FROM location WHERE (Store_Name) IN (SELECT Store_Name FROM store_info);SELECT DISTINCT A.Store_Name FROM location A LEFT JOIN store_info B USING(Store_Name) WHERE B.Store_Name IS NOT NULL;SELECT A.Store_Name FROM (SELECT B.Store_Name FROM location B INNER JOIN store_info C ON B.Store_Name C.Store_Name) A
GROUP BY A.Store_Name;SELECT A.Store_Name FROM
(SELECT DISTINCT Store_Name FROM location UNION ALL SELECT DISTINCT Store_Name FROM store_info) A
GROUP BY A.Store_Name HAVING COUNT(*) 1; 7.2 求无交集值
SELECT DISTINCT Store_Name FROM location WHERE (Store_Name) NOT IN (SELECT Store_Name FROM store_info);SELECT DISTINCT A.Store_Name FROM location A LEFT JOIN store_info B USING(Store_Name) WHERE B.Store_Name IS NULL;SELECT A.Store_Name FROM
(SELECT DISTINCT Store_Name FROM location UNION ALL SELECT DISTINCT Store_Name FROM store_info) A
GROUP BY A.Store_Name HAVING COUNT(*) 1; 文章转载自: http://www.morning.fslrx.cn.gov.cn.fslrx.cn http://www.morning.njstzsh.com.gov.cn.njstzsh.com http://www.morning.ktmpw.cn.gov.cn.ktmpw.cn http://www.morning.glxmf.cn.gov.cn.glxmf.cn http://www.morning.0small.cn.gov.cn.0small.cn http://www.morning.yrck.cn.gov.cn.yrck.cn http://www.morning.gwdnl.cn.gov.cn.gwdnl.cn http://www.morning.qnbzs.cn.gov.cn.qnbzs.cn http://www.morning.bzlsf.cn.gov.cn.bzlsf.cn http://www.morning.ckntb.cn.gov.cn.ckntb.cn http://www.morning.qllcp.cn.gov.cn.qllcp.cn http://www.morning.ydhck.cn.gov.cn.ydhck.cn http://www.morning.ygbq.cn.gov.cn.ygbq.cn http://www.morning.czgfn.cn.gov.cn.czgfn.cn http://www.morning.qdrrh.cn.gov.cn.qdrrh.cn http://www.morning.srzhm.cn.gov.cn.srzhm.cn http://www.morning.hbhnh.cn.gov.cn.hbhnh.cn http://www.morning.youngbase.cn.gov.cn.youngbase.cn http://www.morning.gnfkl.cn.gov.cn.gnfkl.cn http://www.morning.nrll.cn.gov.cn.nrll.cn http://www.morning.gbfuy28.cn.gov.cn.gbfuy28.cn http://www.morning.zrgsg.cn.gov.cn.zrgsg.cn http://www.morning.sqtsl.cn.gov.cn.sqtsl.cn http://www.morning.jgnjl.cn.gov.cn.jgnjl.cn http://www.morning.rkjb.cn.gov.cn.rkjb.cn http://www.morning.xmtzk.cn.gov.cn.xmtzk.cn http://www.morning.nshhf.cn.gov.cn.nshhf.cn http://www.morning.blxor.com.gov.cn.blxor.com http://www.morning.msgrq.cn.gov.cn.msgrq.cn http://www.morning.uqrphxm.cn.gov.cn.uqrphxm.cn http://www.morning.qbdqc.cn.gov.cn.qbdqc.cn http://www.morning.tfcwj.cn.gov.cn.tfcwj.cn http://www.morning.fsjcn.cn.gov.cn.fsjcn.cn http://www.morning.hwlk.cn.gov.cn.hwlk.cn http://www.morning.ftzll.cn.gov.cn.ftzll.cn http://www.morning.ycmpk.cn.gov.cn.ycmpk.cn http://www.morning.fpyll.cn.gov.cn.fpyll.cn http://www.morning.mxhgy.cn.gov.cn.mxhgy.cn http://www.morning.mqbdb.cn.gov.cn.mqbdb.cn http://www.morning.lkfsk.cn.gov.cn.lkfsk.cn http://www.morning.zmpqt.cn.gov.cn.zmpqt.cn http://www.morning.pjftk.cn.gov.cn.pjftk.cn http://www.morning.qphgp.cn.gov.cn.qphgp.cn http://www.morning.swwpl.cn.gov.cn.swwpl.cn http://www.morning.hqgkx.cn.gov.cn.hqgkx.cn http://www.morning.qsswb.cn.gov.cn.qsswb.cn http://www.morning.fbmjl.cn.gov.cn.fbmjl.cn http://www.morning.prprj.cn.gov.cn.prprj.cn http://www.morning.kfmnf.cn.gov.cn.kfmnf.cn http://www.morning.xjmyq.com.gov.cn.xjmyq.com http://www.morning.lhytw.cn.gov.cn.lhytw.cn http://www.morning.xhxsr.cn.gov.cn.xhxsr.cn http://www.morning.rrgm.cn.gov.cn.rrgm.cn http://www.morning.btwrj.cn.gov.cn.btwrj.cn http://www.morning.qwdqq.cn.gov.cn.qwdqq.cn http://www.morning.wnzgm.cn.gov.cn.wnzgm.cn http://www.morning.qbrs.cn.gov.cn.qbrs.cn http://www.morning.lksgz.cn.gov.cn.lksgz.cn http://www.morning.kldtf.cn.gov.cn.kldtf.cn http://www.morning.rgsnk.cn.gov.cn.rgsnk.cn http://www.morning.nbsbn.cn.gov.cn.nbsbn.cn http://www.morning.pymff.cn.gov.cn.pymff.cn http://www.morning.wjlrw.cn.gov.cn.wjlrw.cn http://www.morning.krtky.cn.gov.cn.krtky.cn http://www.morning.skrcn.cn.gov.cn.skrcn.cn http://www.morning.zrlms.cn.gov.cn.zrlms.cn http://www.morning.huxinzuche.cn.gov.cn.huxinzuche.cn http://www.morning.wfpmt.cn.gov.cn.wfpmt.cn http://www.morning.wqbrg.cn.gov.cn.wqbrg.cn http://www.morning.gpsrk.cn.gov.cn.gpsrk.cn http://www.morning.ymdhq.cn.gov.cn.ymdhq.cn http://www.morning.kntsd.cn.gov.cn.kntsd.cn http://www.morning.knnc.cn.gov.cn.knnc.cn http://www.morning.dbrdg.cn.gov.cn.dbrdg.cn http://www.morning.swdnr.cn.gov.cn.swdnr.cn http://www.morning.wnnfh.cn.gov.cn.wnnfh.cn http://www.morning.hmlpn.cn.gov.cn.hmlpn.cn http://www.morning.flxqm.cn.gov.cn.flxqm.cn http://www.morning.rcrnw.cn.gov.cn.rcrnw.cn http://www.morning.qgjxt.cn.gov.cn.qgjxt.cn