mysql必知必会

命令

show databases  //列出所有数据库
show tables //列出表
show columns from table //列出表里的列
4.4 检索所有列
  • 通配符 使用省事,但是会降低索引和引用程序的性能
4.5 检索不同的行

distinct 不能部分使用distinct 指示mysql只返回不同的值,应用所有列,而不仅是前置他的列。
如果 select distinct v_id,price ,除非指定的两个列都不同,否则所有行都会被检索

4.6 限制结果

limit 第一个参数为位置,第二个数为要检索的行数

5 排序检索数据

5.1 排序数据

order by

5.2 按多个列排序
5.3 指定排序方向

asc desc

6 过滤数据

where

null

必须是 is null 才能筛选

7 数据过滤

7.1.3 计算次序

and 和 or 会优先执行 and
where id = 3 or age =10 and height > 9
会被解析为 height > 9 and id = 3 或者 age =10 的数据

7.2 in操作符

in执行速度>or

7.3 not

not 仅对in between 和 exists子句取反

8 用通配符进行过滤

8.1.2 下划线通配符

与%一样,但是只匹配单个字符而不是多个字符

9 正则表达式

Regexp

9.2.2 or匹配

|
regrexp ‘1 | 2’

9.2.3 匹配几个字符之一

[]
[123]ton

9.2.4 匹配范围

[a-z] [1-9]

9.2.5 匹配特殊字符

\
\. \.

10 创建计算字段

concat 拼接

11 使用数据处理函数

常用文本处理函数

left  返回串左边的字符
length	返回串的长度
locate	找出串的一个子串
lower	将串转为小写
ltrim	去掉串左边的空格
right	返回串右边的字符
rtrim 去掉串右边的空格
soundex	返回串的soundex值  是一个将任何文本串转换为描述其语言表示的字母数字模式的算法。比如Y.Lee 去搜Y Lie搜不到,可以尝试用 where soundex(name) = Soundex('Y Lie')
upper	将串转为大写	

日期和时间函数

AddDate	增加一个日期(天,周等)
addtime	增加一个时间(时间,分等)
curdate	返回当前日期
curtime	返回当前时间
date	返回日期时间的日期部分
datediff	计算两个日期之差
date_add	高度灵活的日期运算函数
date_format	返回一个格式化的日期或者时间串
day	返回一个日期的天数部分
dayofweek	对于一个日期,反回对应星期几
hour	返回时间小时部分
minute
month
now	返回当前日期和时间
second
time 返回日期的时间部分
year 年部分
SELECT * FROM `bs_order_review` where YEAR(created_at)='2022' and MONTH(created_at)='1';  查询20221月所有数据

数值处理函数

abs 	绝对值
cos	余弦
exp	指数值
mod	返回余数
pi	圆周率
rand	随机数
sin	正弦
sqrt	平方根
Tan 正切

汇总数据

聚集函数

avg	返回列的平均值
count	行数	count(*)不管列中包含的是空值(null) 还是非空都会计数  count(field) 忽略null
max	最大值
min	最小值
sum	和	忽略值为null的行

分组数据

group by
必须在where后order by前
having 过滤分组 where是分组前过滤,having是分组后过滤

order bygroupby
排序产生的输出分组行,但输出可能不是分组的顺序
任意列都可以使用(甚至非选择的列)只可能使用选择列或表达式列,而且必须使用每个选择列表达式
不一定需要如果和聚集函数一起使用(或表达式)则必须使用
13.5 select 顺序
子句说明是否必须使用
select要返回的列或表达式
from从中检索数据的表仅在从表选择数据时使用
where行级过滤
group by分组仅在按组计算聚集时使用
having组级过滤
order by输出排序顺序
limit检索的行
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值