mysql现状_MYSQL 基础(2)

```mysql

# mysqlselect可以查询常量,函数, 表达式select 100;select"xiaomo";select 100 * 100;selectversion()

```

```mysql

# mysql 起别名select "xiaomo" asname;select new_name as 姓名 fromxxm;

# 默认为空格也可以select new_name 姓名 fromxxm;

# 其别名 如果为all name 这样的 可以使用 ''来表示。select new_name 'all name' fromxxm;

```

```mysql

# 去重distinct

select distinct new_name fromxxm;

```

```mysql

# concat 拼接

# 注意null和 任何字段拼接,结果都为null

# 如果为null 的一列有数据 有 null 或者有值 可以使用ifnull 判断是否有值 ifnull(字段名,"默认值") : 例如: select concat(new_name, ifnull(age,0)) fromxxm;select concat(new_name,age) fromxxm;/*运行结果:

zhangsan22 |

| tom22

| xiaohong22*/```

```mysql

#between and在什么什么之间。SELECTnew_name,

ageFROMxxmWHEREageBETWEEN 5

AND 20# 运行结果:

nice18nice18nice18nice18```

```mysql

#in的使用SELECT id,age,new_name FROM xxm WHERE age in (520,22)

```

```mysql

#is NULL筛选出为空的数据。SELECT id,new_name FROM xxm WHERE new_name is NULL# 运行结果:12 null```

```mysql

#is not null筛选出不为空的数据SELECT id,new_name FROM xxm WHERE new_name is NOT NULL# 运行结果:1zhangsan2tom

...11moyan

```

```mysql

# 安全等于<> 不等于 != 或者 <>

1. 可以作为普通的运算符为 =# 例如:SELECT new_name FROM xxm WHERE new_name <=> 'zhangsan'# 运行结果:

# zhangsan

```

```mysql

#order by排序

#DESC降序 , 从大到小SELECT new_name,age FROM xxm WHERE age >= 22 ORDER BY age DESC```

```mysql

# LENGTH 获取字符串长度

# 获取字符串长度按照降序来排序SELECT LENGTH(new_name),new_name FROM xxm ORDER BY LENGTH(new_name) DESC

/*运行结果:

8 zhangsan

8 xiaohong

5 moyan*/```

```mysql

# 字符函数

# LENGTH 获取字符串的字节数

# concat 字符拼接

#UPPER SELECT UPPER(new_name) FROMxxm # 将小写字母变成大写字母

#lower SELECT LOWER(new_name) FROMxxm # 将大写字母变成小写字母

# SUBSTRSELECT SUBSTR(new_name,1,2) FROMxxm # 截取字符长度,索引为一开始 这个是截取俩个字符

# SUBSTRSELECT SUBSTR(new_name,1) FROMxxm # 获取字符一后面所有的字符

# INSTR 返回字符第一次出现的索引,如果找不到返回0SELECT INSTR(new_name,'san'),new_name FROMxxm/*运行结果:

6 zhangsan

0 tom

0 xiaohong*/# trim 去除左右俩边的空格SELECT TRIM(new_name) FROMxxm

# lpad 左填充 如果不够10 位*号 填充SELECT LPAD(new_name,10,"*") FROMxxm

# rpad 右填充SELECT RPAD(new_name,10,"*") FROMxxm

#replace将 xxm 中张三 替换成 lisiSELECT REPLACE(new_name,'zhangsan','lisi') FROMxxm

```

```mysql

#round四舍五入SELECT ROUND(age) FROMxxm

# 小数点保留后俩位SELECT ROUND(age,2) FROMxxm

# CEIL # 返回>=最少整数SELECT CEIL(age) FROMxxm

#floor 返回该<=最大整数SELECT CEIL(age) FROMxxm

#TRUNCATE截断, 只保留小数点1位数SELECT TRUNCATE(age,1) FROMxxm

# MOD 取余SELECT MOD(age,2) FROMxxm

```

```mysql

# now 返回年月日, 时分秒SELECTNOW()/*运行结果:

2020-09-17 10:00:41*/# 只返回年月日SELECTCURDATE()/*结果:

2020-09-17*/# 只返回时分秒SELECTCURTIME()/*运行结果:

10:55:34*/# 获取 年月日 时分秒SELECT YEAR(NOW()) # 年SELECT MONTH(NOW()) # 月SELECTMONTHNAME(NOW()) # 英文显示SELECT DAY(NOW()) # 日SELECTHOUR(NOW()) # 时SELECTMINUTE(NOW()) # 分SELECTSECOND(NOW()) # 秒/*运行结果:

2020

9

September

17

11

1

14*/

/*%Y 四位年份

%y 2位年份

%m 月份 补0 01 02

%c 月份不补 0 1 2 3

%d 日 01 02 03 ...

%H 时 24 小时

%h 时 12 小时

%i 分 00 01

%s 秒 00 ..*/# STR_TO_DATE 将 字符转换成 日期类型SELECT STR_TO_DATE('2020-09-17','%Y-%m-%d')

# DATE_FORMAT 将日期转换成字符SELECT DATE_FORMAT(NOW(),"%Y")/*运行结果:

2020年*/```

```mysql

#IF 相当于 if else# 有没有年龄大于或者等于520的 ,如果有返回有,如果没有返回没有SELECT IF(age>=520,'有','没有') FROMxxm/*运行结果:

没有

有*/```

```mysql

#CASE

SELECT id, new_name, CASEidWHEN 1 THEN age * 2

WHEN 2 THEN age / 2# 还可以继续写 你的条件ELSEage* 10

END FROMxxm/*运行结果:

1 zhangsan 44

2 tom 11.0000

3 xiaohong 220

4 nice 180*/```

```mysql/*sum 求和

avg 平均值

max 最大值

min 最小值

count 计算个数*/# 所有 年龄的 和SELECT SUM(age) FROMxxm

# 所有 年龄的 平均值SELECT avg(age) FROMxxm

# 最小值SELECT min(age) FROMxxm

# 最大值SELECT max(age) FROMxxm

# 计算个数SELECT count(age) FROMxxm

# 聚合函数支持 distnctSELECT count(DISTINCT age) FROMxxm

# 日期相差值SELECT DATEDIFF('2020-10-01','2020-09-17')/*运行结果:

14*/```

```MYSQL

#group by分组

# 每个年龄 的 平均年龄SELECT AVG(age) FROM xxm GROUP BYage

#having 在group by 后面使用 having [聚合函数]

SELECT age FROM xxm GROUP BY age HAVING AVG(age)

```

```mysql

# 内连接SELECT * FROM teacher,xxm WHERE xxm.t_id =teacher.id

# 内连接 语法select 字段名, 字段名 FROM 表1 INNER JOIN 表2 ON 表1.外键id =表2.idSELECT t_name, new_name FROM xxm INNER JOIN teacher ON xxm.t_id =teacher.id/*运行结果:

toms zhangsan

toms tom*/# 左连接, 查询出所有没有老师交的学生SELECT xxm.id, t_id, new_name FROM xxm LEFT JOIN teacher ON teacher.id = xxm.t_id WHERE xxm.t_id = 0

/*运行结果:

3 0 xiaohong

6 0 nice

7 0 nice*/# 右连接SELECT xxm.id, new_name,t_id FROM teacher RIGHT JOIN xxm ON xxm.t_id = teacher.id WHERE xxm.t_id = 0```

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值