【写MySQL语句中遇到的不熟练处记录】

2022/4/10 19:13:07

本文主要是介绍【写MySQL语句中遇到的不熟练处记录】,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

按从 Z 到 A 的顺序显示结果

字符串默认就是按字典顺序
Z 到 A 的排序:order by cust_name desc

先按XX排序,再按XX排序

先按顾客 ID 对结果进行排序,再按订单日期倒序排列。直接在order by中写多个字段即可。
 select cust_id,order_num from Orders order by cust_id, order_date desc;

order by 的使用在where 之后

包含 toy 一词

where prod_desc like '%toy%';

不包含 toy 一词

where prod_desc not like '%toy%';

包含 toy 和 carrots

where prod_desc like '%toy%' and prod_desc like '%carrots%' ;

返回大写字母 upper()

字母大写:upper(字符串)

取前n个字符并进行拼接

字符串的截取:substring(字符串,起始位置(从1开始),截取字符数)
字符串的拼接:concat(字符串1,字符串2,字符串3,...)
concat(substring(cust_name,1,2),substring(cust_city,1,3))

返回日期的一部分---date_format(日期,'%Y%m%d)

select order_num,order_date
from Orders
where date_format(order_date,'%Y-%m')='2020-01'
order by order_date
或者
where month(order_date) = 1 and year(order_date) = 2020

典型函数

最大值---max()
最小值---min()
平均值---avg()
总值 ---sum()
总数 ---count()

group by 和 having

where---过滤过滤指定的行
having--过滤分组,与group by连用
where条件语句后面不能加聚合函数(分组函数)
having 不能单独使用,必须和group by 联合使用

select order_num
from OrderItems
group by order_num
having sum(quantity)>=100
order by order_num

join 和 union

join---连接表,对列操作
union--连接表,对行操作。
union--将两个表做行拼接,同时自动删除重复的行。
union all---将两个表做行拼接,保留重复的行。

只用一条select语句,那就用or不用union了


这篇关于【写MySQL语句中遇到的不熟练处记录】的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程