视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
数据查询基础_MySQL
2020-11-09 20:10:32 责编:小采
文档

数据查询基础

还好吗?几天不见,甚是思念呀!笑对人生,好好生活,快快乐乐的迎接我们的美好未来吧!

好吧!抒情结束,我们一起来学习一下我们今天的主题:数据查询基础,很有意思哟.让我们来感受它的魅力吧!

一.使用select语句进行查询

语法:

select <列名>

from <表名>

[where <查询条件表达式>]

[order by <排序的列名>[asc或desc]]

其中:[]表示可省

01.查询所有的数据行和列(*)

select *from Studendt

02.查询部分行或列

eg:查找留言人是“乐”的部分信息

select ID,Email

from Student

where name='乐'

03.别名

别名方案一:

select msgAuthor as 留言人,msgContent as 留言内容

from Message

别名方案二:

select msgAuthor 留言人,msgContent 留言内容

from Message

别名方案三:

select 留言人=msgAuthor,留言内容=msgContent

from Message

04.查询空值

在SQL Server中null代表不知道,所以如果where后的限定条件不能用=和null做对比,必须使用is null

eg:查询Email为空的

select *from Student

where Email is null --不能写为where Email=null

05.常量列

select *,'汉族'as 民族 from Message

06.查询返回的行数(top关键字)

eg:只检索前3条数据

use MySchool

select top 3 * from student

where Gender='0'

07.将多列合并成一列显示

select msgAuthor+'____'+msgContent as 留言人

from Message

08.通配符

01. %:任意长度的任意字符,(包含0个)

02. _:任意的单个字符,只能是一个

03. []:括号中所指定范围内的一个字符

04. [^]:不在括号中所指定范围内的任意一个字符

二.查询排序(order by)

asc:升序(不写默认值)

desc:降序

eg1:

select * from student

order by Gender --默认按主键升序排序

eg2:按照多列排序

select * from student

order by GradeId [asc],Gender [desc]

二.查询中使用函数

01.字符串函数

01.CharIndex('str1','str2',index)

参数含义:

--第一个参数:要查询的字符串

--第二个参数:在哪个字符串中搜索

--第三个参数:从str2的第几个字母开始搜索

--注意点:如果在str2中没有找到str1,那么返回0

select charindex('好好学','S1是S2的基础,所以大家好好学',1)

--返回14

02.len():获取小括号中字符串的长度,空格也算一个字符长度

select len('明天咱们还上课,希望大家回去好好休息') --返回18

select len(' 大家都 是好孩子 ')

--返回39

注意点:如果内容以多个空格结尾,那么结尾的多个空格,是不计算长度的

--例如:

select len('我们都是好孩子 ') --返回7

03.upper:把传递给它的字符串转换为大写

SELECT upper('SQL Server课程') --SQL SERVER课程

04.LTRIM()清除左侧空格

select ltrim(' 一个人的时候,要好好学习, ') --一个人的时候,要好好学习,

05.rigim()清除右侧空格

select rtrim(' 生活不是敷衍, ') -- 生活不是敷衍,

既想移除左边空格,也想移除右边空格:

select rtrim(ltrim(' 生活不是敷衍, '))

select ltrim(rtrim(' 你知道吗! '))

06.substring('字符串',截取的位置,截取的长度)

select substring('我是中国人,我爱自己伟大的祖国,真的',6,1) --返回,

07.right():从字符串右边返回指定类型的字符

left():从字符串左边返回指定类型的字符

select left('大家今天辛苦了,爱你们',3) --大家今

select right('大家今天辛苦了,爱你们',2) --你们

08.replace('str1','要替换的字符','目标字符'):

select replace('我爱你,天尽头,虽然这很遥远,但是心不变','遥远','现实')

--我爱你,天尽头,虽然这很现实,但是心不变

09.stuff('字符串',删除的起始位置,删除的长度,'插入的字符串')

select stuff('我爱你中国,我爱你故乡',4,2,'北京') --我爱你北京,我爱你故乡

02.日期函数

01.getdate():获取当前日期和时间

select getdate()

select dateadd(yy,1,getdate())

02.dateadd(按年/月/日添加,增量,时间)

select dateadd(yy,100,'2014-8-6')

select dateadd(year,-20,getdate())

03.datediff(按年/月/日求差,小时间,大时间)

select datediff(dd,'1996-12-01',getdate())

04.日期中指定日期部分的字符串形式

select datename(mi,getdate())

05.日期中指定日期部分的整数形式

select datepart(yy,getdate())

06.值 缩 写

Year Yy yyyy

Quarter Qq q

Month Mm m

Day of year Dy y

Day Dd d

Weekday Dw w

Week Wk ww

Hour Hh h

Minute Mi n

Second Ss s

Millisecond Ms -

03.数学函数

01.天花板(ceiling) 向上取整

select ceiling(1.99) --返回2

02.地板(floor) 向下取整

select floor(1.99) --返回1

03.系统函数

convert:用来转变数据类型

select convert(varchar(32),111)

--返回的是字符串'111'

下载本文
显示全文
专题