select * from java 未选定行_对列和行的操作

| 理论与实践相结合效果更佳,本文文末有获取SQLZOO前三章练习题答案的方式

本文将从以下几个方面进行:

一、对列的查询

    01 查询单个列

    03 查询所有列

    04 对列去重

二、对列的值排序

    01 升序排列

    02 降序排列

    03 多个列排序

三、对行的筛选

    01 单条件筛选

    02 多条件筛选

    03 IN命令

    04 LIKE命令

一、对列的查询

Excel里对于一张表,只想选取其中的某几列,只需复制列的值粘贴到新表即可,Excel是对行的操作很多,对列的操作几乎不需要什么技巧。

01 查询一个列

10a8baf949bfa26da2d5d346a9acf790.gif

这里查询用到【select】命令,从XX表里选取XX列,select后跟列名,from后跟表名

--查询一个列select 列名 from 表名;

查询student表里sname一列的值

ede2c73ac57c86bf9106b2eae3b275f1.png

02 查询多个列

000eaa954113246e8f1fc854bc8f1290.gif

多个被查询的列之间用逗号分隔

--查询多个列select 列1,列2 from 表;

查询sname和sage两个列的值

2ddd254b9f8c3fb5c37fa62627db4b0d.png

03 查询所有列

用到通配符 *,相当于查看这个表所有的数值

--查询所有列select * from 表;

查询student这个表的所有列的值

a9baada1c66b6c15d03457d054fb93b4.png

04 查询该列中不重复的值(去重)

Excel里用到【删除重复值】的功能

357c8ea0c49de50da4c661465de4eb1b.gif

SQL中用到【Distinct】命令

--去重select DISTINCT 列 from 表;

对sex一列进行去重(这个例子里这样去重并没什么意义)

91ab2a899e9c518240281f3f6628649e.png

二、对列的值排序

01 升序排列

Excel中从【筛选】功能里可以进行升序排列的操作

b5b16aad69ed878d82701a5173375a49.gif

SQL中排序用到【order by】关键字,后面跟要安装哪一列排序,默认是升序,也可以直接写明ASC。

--对列的值升序排列select 列 from 表 order by 列;select 列 from 表 order by 列 ASC;

按snum一列升序排列

57231eda33dfdc1d4bc91298ab35473c.png

02 降序排列

a2c250e384a27ba80122db2987ff68c1.gif

SQL中用到【DESC】关键字降序排列

--对列的值降序排列select 列 from 表 order by 列 DESC;

按snum一列降序排列

4dbdd32bf6e456f1aadee747361747a5.png

03 多个列排序

Excel中用【排序】功能对多个列排序

d74a441b6eb18e5cbd8d698f853f2414.gif

SQL里对要排序的多个列之间用逗号进行分割

--多个列排序select 列1,列2 from 表 order by 列1 DESC,列2 ASC;

(左右滑动可查看完整代码)

对snum降序,对sage升序排列选择全部的列。

6300a2bf8afcff55c544d98c05931dc0.png

三、对行的筛选

Excel里对行的筛选主要用到【筛选】功能

SQL里对行的筛选主要用【where】命令+操作符,主要的操作符如下表所示:

操作符

说明

=

等于

小于

大于

<> 

不等于

>=

大于等于

<=

小于等于

BETWEEN

介于

LIKE

通配符

IS  NULL

空值

01 单条件筛选

--单条件筛选select 列 from 表 where 列 操作符 值;

注:

  • 字符要加单引号

  • Order by 在 where 之后使用

【=】

筛选snum等于6的行记录

214f5cc7b3bab9f9a41a4be262fd2943.gif

select * from student1 where snum = 6;

6840f1474027b07c774f68040651dde6.png

筛选snum小于6的行记录

a5cd00ba390e8a12bc50fca25882b369.gif

select * from student1 where snum < 6;

3e961f96b2c8b3789b298a51eb4a1660.png

【>】

筛选snum大于6的行记录

d50bca4eb3de350d303a3da837d78d90.gif

select * from student1 where snum > 6

675eab53393b69f8f9fe0fc9fe5155b9.png

【<>】

筛选snum不等于6的行记录

2bdff4fd9d770c32c704713b98045d68.gif

select * from student1 where snum <> 6;

288ccc50aee3470b16626435dac6886e.png

【between】

筛选snum中介于6~8之间的行记录

95a2fc47d60b665da782e8f2f8e3605c.gif

select * from student1 where snum between 6 and 8;

d4d916ff2eb44b647a547a923ab84066.png

02 多条件筛选

SQL中多条件筛选用到逻辑运算符:AND  OR   NOT

  • AND:与,表示必须几个条件同时满足;

  • OR:或,表示几个条件中有一个满足即可;

  • NOT:非,否定

--多条件筛选select 列 from 表 where 列 操作符 值 逻辑运算符 列 操作符 值;

【and】

这里用另一张表sc表,选择分数大于60分且学号为1的所有记录

b9b84938ea258583a650676135f16f71.gif

select * from sc where score > 60 and snum = 1;

4639d6974801199daf162646e6808a75.png

【or】

选择分数大于60或者学号等于1的所有记录

Excel里用高级筛选来做

2c4a84bd22bf9f48696134aa51206797.gif

select * from sc where score > 60 or snum = 1;

84bb25aac5c26cbbb79dfc8430caa478.png

【and or 同时】

同样用到Excel里高级筛选的功能

0e525376fc867428188374b07a625f45.png

select * from sc where score > 60 or snum = 1 and cnum = 1;

这里先计算的是and两边的snum为1且cnum为1的值,再与score大于60进行或计算

d70d24119e56241dea6d29aa539b1604.png

select * from sc where (score > 60 or snum = 1) and cnum = 1;

与上例不同,这里先计算括号里的或再计算括号外的与

48dc0c0b692ef46978381cbaed244d9b.png

注:and 和 or可以组合使用,若不加括号,则优先进行and计算

03 IN

【IN】命令的功能和OR是一样的,不同的是OR只能对两个值进行或计算,而IN可以对多个值进行或计算。

--多个值的或计算select 列 from 表 where 列 IN (值1,值2,值3);

筛选出分数等于60或70或80的所有行记录

f9fe02cc1adceff6f35f9d17b460c5ba.png

04 LIKE

LIKE的功能类似Excel里筛选里的模糊查找。

--模糊查找select 列 from 表 where 列 LIKE 条件;
  • 百分号(%)表示多个任意想要匹配的字符。

  • 下划线(_)同%的匹配,只是只能匹配单个字符。

筛选出student表中sname里姓李的学生的所有记录

8b4b8dc653dd395c934cfeda0d691232.gif

select * from student1 where sname like '李%'

87bad237895c597b1db45b2a45c6e8e3.png

这一小节内容的练习可参考SQLZOO的selectbasics、select from world和selectfrom nobel的练习,公众号后台回复【SQLZOO】即可获得这三章练习的答案。


任何疑问,欢迎加我个人微信号:data_cola 交流讨论

提供入门级数据分析的学习路线规划,分享从Excel到统计学的干货。数据分析是一项技能,希望人人都能分析数据。

6c3f32c6b419b4e1e624f79ea6a9f787.png

相关内容:

SQL学习:MySQL入门 | 库/表/记录的增查删改

Excel分析方法:时间序列分析 | 回归分析 | 描述性统计分析 | 相关性分析 

Excel图表:数据地图 | 数据透视表 | 5个基本图 | 13个进阶图 | 直方图 | 控制图 | 排列图

Excel函数:日期文本函数 | 查找引用函数 | if函数 | 统计函数

用Excel进行数据分析:数据获取 | 数据处理 

方法论:如何系统地学习Excel | 数据分析学习 | Excel相见恨晚的技巧 

如果你觉得有用,请点击右下角 在看 哟~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值