基本sql及优化方案及常识

写这些之前必须了解sql的基本执行顺序
写法:SELECT… FROM… join_type JOIN…ON…WHERE …GROUP BY …HAVING …ORDER BY … limit
执行顺序:
FROM…ON…OUTER(join)…WHERE…GROUP BY…HAVING…SELECT…DISTINCT…ORDER BY…LIMIT…这个执行过程中产生了很多的虚表,最终只显示了最后一张虚表。
关于解释(一定参考):https://blog.csdn.net/yan454790122/article/details/83151950

1.like ‘%a%’ 包含a的;like ‘_a_y’ 第一个是a的,第四个是y的;%可以替代多个字符, _替代单个字符;like ‘[al]%’ 找出a或l开头的数据;
like ‘[al]%’ 反之。
2 in 只需要满足里面的一个条件即可。
3 between a and b a和b之间
4 使用别名可以加as也可以不用加as,直接跟在表名之后。
5 表与表之间建立联系的方式:
①inner join/join 通过主键关联 from user as u join room as r on/where
②left join 以有连接未主体,相反right join
③union 用于合并两个或者多个select语句的结果集

sql语句大致有两种状态。
更新数据库数据的情况:
① 状态值更新 : 这个没得说,简单的更新即可。
② 像支付等更新 (不能重复):最后是先查版本号,在拿版本号去更新。

1.查版本号V=1.0
2.update table set money = monet -100,set V = V+ 1 where id = ? and name = ?

子查询能不用就不用,大量的子查询会使笛卡尔积太大,简单来说执行次数过多,推荐尽量用join表的方式。

sql优化方案
参考:https://www.cnblogs.com/yunfeifei/p/3850440.html
参考:https://www.cnblogs.com/itsharehome/p/6160780.html

数据库金钱常识:常用类型:float, double, decimal ,有效位数分别为:7,15,28。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值