SQL教程
托尼吴
退役大厂架构师
展开
-
liquibase集成springboot使用步骤(全网最详细)
本文档主要介绍内容 1:liquibase概念 2:liuibase与spring boot集成 3:liquibase与数据库的基本操作 一:什么是liquibaseLiquiBase(从 2006 年开始投入使用)是一种免费开源的工具,可以实现不同数据库版本之间的迁移(参见参考资料)。目前也存在少量其他开源数据库迁移工具,包括 openDBcopy 和 dbdeploy。LiquiBase 支持 10 种数据库类型,包括 DB2、Apache Derby、My...原创 2020-05-26 14:34:42 · 10884 阅读 · 9 评论 -
mysql索引设计
一:索引基础 1:什么是索引: 在关系数据库中,索引是一种单独的、物理的对数据库表中一列或多列的值进行排序的一种存储结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容。索引提供指向存储在表的指定列中的数据值的指针,然后根据您指定的排序顺序对这些指针排序。数据库使用索引以找到特定值,然后顺指针找到包含该值的行。这样可以使对应于表的SQL语句执行得更快,可快速访问数据库表中的特定信...原创 2020-11-28 16:39:47 · 119 阅读 · 0 评论 -
mysql 查询当天、本周,本月,上一个月的数据
上周的数据SELECT * FROM t_order WHERE YEARWEEK(date_format(create_time,'%Y-%m-%d'),1) = (YEARWEEK(now(),1)-1) ;今天select * from 表名 where to_days(时间字段名) = to_days(now());昨天SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ) - TO_DAYS( 时间字段名) <= 1近7...原创 2020-10-14 15:57:59 · 879 阅读 · 0 评论 -
Mysql 获取昨日、今日、明日凌晨时间
# 获取今日凌晨时间UNIX_TIMESTAMP(CAST(SYSDATE()AS DATE))# 获取昨日凌晨时间UNIX_TIMESTAMP(CAST(SYSDATE()AS DATE) - INTERVAL 1 DAY)# 获取明日凌晨时间UNIX_TIMESTAMP(CAST(SYSDATE()AS DATE) + INTERVAL 1 DAY)# 获取的是时间戳# 时间戳转换成datetime, datetime也就是我们说的日期格式 年-月-日 时-分-秒FROM_UNIX..转载 2020-06-25 14:58:31 · 2037 阅读 · 1 评论 -
mysql建数据库的字符集与排序规则说明
1.字符集一般选择utf8.下面介绍一下utf8与utfmb4的区别。utf8mb4兼容utf8,且比utf8能表示更多的字符。至于什么时候用,看你的做什么项目了,到http://blog.csdn.net/leelyliu/article/details/52879685看unicode编码区从1 ~ 126就属于传统utf8区,当然utf8mb4也兼容这个区,126行以下就是utf8mb4扩充区,什么时候你需要存储那些字符,你才用utf8mb4,否则只是浪费空间。2.排序说明...原创 2020-05-27 16:03:33 · 217 阅读 · 0 评论 -
mysql explain执行计划详解
1)、id列数字越大越先执行,如果说数字一样大,那么就从上往下依次执行,id列为null的就表是这是一个结果集,不需要使用它来进行查询。2)、select_type列常见的有:A:simple:表示不需要union操作或者不包含子查询的简单select查询。有连接查询时,外层的查询为simple,且只有一个B:primary:一个需要union操作或者含有子查询的select...原创 2019-11-21 09:29:36 · 90 阅读 · 0 评论 -
mysql数学函数之truncate用法
语法TRUNCATE(X,D)Returns the number X, truncated to D decimal places. If D is 0, the result has no decimal point or fractional part. D can be negative to cause D digits left of the decimal point of t...转载 2019-09-25 10:23:43 · 537 阅读 · 0 评论 -
mysql查询数据统计
//统计某个时间段 吨数和销售额的统计数据SELECT tr.item_name AS "商品名称" ,SUM(tr.item_num) AS "吨数",SUM(tr.item_listing_price) AS "销售额"FROM tr_order_item tr WHERE tr.dr = 0 AND tr.create_time BETWEEN "2018-10-20" AND "2...原创 2019-04-01 09:20:36 · 1292 阅读 · 0 评论 -
浅谈 Mybatis中的 ${ } 和 #{ }的区别
一、举例1 select * from user where name = "dato"; 2 3 select * from user where name = #{name}; 4 5 select * from user where name = '${name}'; 一般情况下,我们都不会注意到这里面有什么不一样的地方。因为这些sql都可以达到我们的目的,去查询名字叫da...转载 2019-02-19 16:18:26 · 175 阅读 · 0 评论 -
mysql几种连接方式区别
mysql的几种join2017年03月19日 14:49:07 carl-zhao 阅读数:7845 标签: mysqlsqljoin 更多个人分类: MySQL版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012410733/article/details/63684663之前学习mysql的时候对于老师说的左连接,右连接…...原创 2018-12-20 15:51:12 · 10796 阅读 · 5 评论 -
sql语句中不能同时对一张变进行select和update或者delete操作
在进行sql查询时如果对一张表进行select的同时不能进行操作在这个sql语句中同时对w_wkn这张表进行了select查询操作,同时也进行了delete操作,这样的sql执行会报错 You can't specify target table 'w_wkn' for update in FROM clause正确的做法是操作第二张表,或者进行一张临时表这样就没问题。...原创 2018-05-29 14:55:31 · 6730 阅读 · 4 评论 -
SQL语法(二)
TOP 子句TOP 子句TOP 子句用于规定要返回的记录的数目。对于拥有数千条记录的大型表来说,TOP 子句是非常有用的。注释:并非所有的数据库系统都支持 TOP 子句。 LIKE 操作符用于数据库的模糊查询数据 "a%" 查询以a开头的数据SELECT * FROM w_wzx WHERE w_name LIKE "a%" "%f"以f结尾SELECT * FROM w_wzx WHERE...原创 2018-04-09 15:56:27 · 250 阅读 · 0 评论 -
SQL函数(三)
Sql函数 Avg计算id的平均值SELECT AVG(id) FROM w_wkn COUNT() 返回匹配指定条件的行数。ELECT COUNT(id) FROM w_wkn FIRST()函数返回指定的字段中第一个记录的值。SELECT FIRST(OrderPrice) AS FirstOrderPrice FROM Orders MAX() 函数 函数返回一列中的最大值。N...原创 2018-04-09 16:47:40 · 214 阅读 · 0 评论 -
SQL语句的各种连接查询
pro_dish 菜品表:pro_dish_standard 菜品规格表:SQL语句的常用三种连接查询:1、 内连接(inner join 或 join)内连接是等值连接,它使用“=、&gt;、”等运算符根据每个表共有的列的值匹配两个表中的行查询语句:select * from pro_dish pd inner join pro_dish_standard pdson pd.id = p...原创 2018-04-10 09:39:50 · 68760 阅读 · 1 评论 -
sql连接查询中on筛选与where筛选的区别
sql中的连接查询分为3种, cross join,inner join,和outer join , 在 cross join和inner join中,筛选条件放在on后面还是where后面是没区别的,极端一点,在编写这两种连接查询的时候,只用on不使用where也没有什么问题。因此,on筛选和where筛选的差别只是针对outer join,也就是平时最常使用的left join和right ...原创 2018-04-10 10:03:28 · 2081 阅读 · 2 评论 -
SQL在查询字符串时,查询的字符串含有通配符的的处理方法
原创 2018-04-26 20:26:25 · 3487 阅读 · 0 评论 -
SQL中WHERE和 HAVING的区别
WHERE和HAVING的区别在于作用对象不同,WHERE字句的作用对象用于基本表或者视图,从中选择满足条件的列,HAVING短语作用于组,从中选择满足条件的组。原创 2018-04-26 20:40:26 · 377 阅读 · 0 评论 -
sql几种语句的使用 UNION INTERSECE EXCEPT等
和 UNION 指令类似,INTERSECT 也是对两个 SQL 语句所产生的结果做处理的。不同的地方是, UNION 基本上是一个 OR (如果这个值存在于第一句或是第二句,它就会被选出),而 INTERSECT 则比较像 AND ( 这个值要存在于第一句和第二句才会被选出)。UNION 是联集,而 INTERSECT 是交集。UNION的用法SELECT w_wkn.w_name from w...原创 2018-04-28 09:54:09 · 556 阅读 · 0 评论 -
SQL基础教程
SQL 是一门 ANSI 的标准计算机语言,用来访问和操作数据库系统。SQL 语句用于取回和更新数据库中的数据。SQL 可与数据库程序协同工作,比如 MS Access、DB2、Informix、MS SQL Server、Oracle、Sybase 以及其他数据库系统。不幸地是,存在着很多不同版本的 SQL 语言,但是为了与 ANSI 标准相兼容,它们必须以相似的方式共同地来支持一些主要的关键词...原创 2018-05-08 10:35:59 · 500 阅读 · 0 评论 -
SQL基础(一)
SQL 是一门 ANSI 的标准计算机语言,用来访问和操作数据库系统。SQL 语句用于取回和更新数据库中的数据。SQL 可与数据库程序协同工作,比如 MS Access、DB2、Informix、MS SQL Server、Oracle、Sybase 以及其他数据库系统。不幸地是,存在着很多不同版本的 SQL 语言,但是为了与 ANSI 标准相兼容,它们必须以相似的方式共同地来支持一些主要的关键词...原创 2018-04-09 13:23:18 · 261 阅读 · 0 评论