MySQL常用高级语句
创始人
2024-03-17 02:42:57

SQL高级语句

DISTINCT

不显示重复的内容

语法:SELECT DISTINCT “字段” FROM “表名”;

select distinct name from lk1;

在这里插入图片描述

SELECT

显示表格中一个或数个栏位的所有资料

语法:SELECT “字段” FROM “表名”;

select * from lk1;  #查看表格详细信息
select name from lk1; #按要求查看指定一个字段内容
select name,sex from lk1; #按要求查看多个字段内容

在这里插入图片描述

WHERE

条件查询

语法:SELECT “字段” FROM “表名” WHERE “条件”;

select * from 表名 where 需求;

在这里插入图片描述

AND OR

代表且、或、和的意思

语法:SELECT “字段” FROM “表名” WHERE “条件1” {[AND|OR] “条件2”};

select * from 表名 where 需求1 or(需求2 and 需求3);

在这里插入图片描述

order by

按关键字排序

语法:SELECT “字段” FROM “表名” [WHERE “条件”] ORDER BY “字段” [ASC, DESC];

#ASC 是按照升序进行排序的,是默认的排序方式。

#DESC 是按降序方式进行排序。

select id,name,score from info order by score desc; # 讲查看到的成绩按降序排列
select id,name,score from info order by score; #不加desc 则默认为升序

在这里插入图片描述
在这里插入图片描述
order by还可以结合where进行条件过滤,筛选地址是杭州的学生按分数降序排列

select name,score from info where address='hangzhou' order by score desc;

在这里插入图片描述
ORDER BY 语句也可以使用多个字段来进行排序,当排序的第一个字段相同的记录有多条的情况下,这些多条的记录再按照第二个字段进行排序,ORDER BY 后面跟多个字段时,字段之间使用英文逗号隔开,优先级是按先后顺序而定
但order by 之后的第一个参数只有在出现相同值时,第二个字段才有意义

LIKE

匹配一个模式来找出我们要的资料

语法:SELECT “栏位” FROM “表名” WHERE “字段” LIKE {模式};

select * from info where name like 'li%';# 以li开头的所有名字
select *from info where name like '%si%'; #名字中包含si的名字
select *from info where name like 'liuy_'; # 以liuy开头并且后面仅有一个字符的名字

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

count(*)

显示当前表的总字段数量

select count(*) as number from info;
显示当前表的总字段数,以number显示

在这里插入图片描述

BETWEEN

显示两个值范围内的资料

语法:SELECT “字段” FROM “表名” WHERE “栏位” BETWEEN ‘值1’ AND ‘值2’;

select * from info where score between 80 and 100;

在这里插入图片描述

IN

显示已知的值的内容

语法:SELECT “字段” FROM “表名” WHERE “栏位” IN (‘值1’, ‘值2’, …);

select * from info where score in (10,11,98);

在这里插入图片描述

AS

此外,AS 还可以作为连接语句的操作符。
创建LK2表,将info表的查询记录全部插入LK2表

create table lk2 as select * from info;
1、创建了一个新表t1 并定义表结构,插入表数据(与info表相同)
2、但是”约束“没有被完全”复制“过来 #但是如果原表设置了主键,那么附表的:default字段会默认设置一个0
相似:
克隆、复制表结构
create table lk2 (select * from info);

在这里插入图片描述

limit

limit 限制输出的结果记录
在使用 MySQL SELECT 语句进行查询时,结果集返回的是所有匹配的记录(行)。有时候仅 需要返回第一行或者前几行,这时候就需要用到 LIMIT 子句

select * from info limit 3,3;

在这里插入图片描述

通配符

通常通配符都是跟 LIKE 一起使用的
在这里插入图片描述

子查询

子查询也被称作内查询或者嵌套查询,是指在一个查询语句里面还嵌套着另一个查询语 句。子查询语句是先于主查询语句被执行的,其结果作为外层的条件返回给主查询进行下一 步的查询过滤。
PS: 子语句可以与主语句所查询的表相同,也可以是不同表
子查询不仅可以在 SELECT 语句中使用,在 INERT、UPDATE、DELETE 中也同样适用。在嵌套的时候,子查询内部还可以再次嵌套新的子查询,也就是说可以多层嵌套。

select name,score from info where id in (select id from info where score >80);
主语句:select name,score from info where id
子语句(集合): select id from info where score >80
子语句中的sql语句是为了,最后过滤出一个结果集,用于主语句的判断条件
in: 将主表和子表关联/连接的语法

在这里插入图片描述

多表查询

IN 用来判断某个值是否在给定的结果集中,通常结合子查询来使用

当表达式与子查询返回的结果集中的某个值相等时,返回 TRUE,否则返回 FALSE。 若启用了 NOT 关键字,则返回值相反。需要注意的是,子查询只能返回一列数据,如果需 求比较复杂,一列解决不了问题,可以使用多层嵌套的方式来应对。 多数情况下,子查询都是与 SELECT 语句一起使用的

查询分数大于80的记录

 select name,score from info where id in (select id from info where score>80);

在这里插入图片描述

EXISTS

用来测试内查询有没有产生任何结果,类似布尔值是否为真

如果有的话,系统就会执行外查询的SQL语句,若是没有的话,那整个SQL语句就不会产生任何结果

语法:SELECT “字段” FROM “表格1” WHERE EXISTS (SELECT * FROM “表格2” WHERE “条件”);

select name,xueke from info where name in (select name from test1 where score=10);
select name,xueke from info where name in (select name from test1 where score=100);

在这里插入图片描述

相关内容

热门资讯

埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...