
数据库与SQL
数据库与SQL
花长好,月长圆,人长寿
这个作者很懒,什么都没留下…
展开
-
mysql的锁机制
1、mysql锁的基本介绍 锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。 相对其他数据库而言,mysql的锁机制比较简单,其最显著的特点是不同的存储引擎支持不同的锁机制。比如,MyISAM和MEM...原创 2020-10-28 16:47:11 · 1068 阅读 · 0 评论 -
sql按日期分组
<select id="selectDayStatistics" resultType="java.util.Map"> SELECT COUNT(1) AS num,DATE_FORMAT(create_time, '%Y-%m-%d') AS time FROM t_feedback t WHERE t.company_id=#{companyId} AND t....原创 2020-01-14 14:21:35 · 2674 阅读 · 0 评论 -
SQL复制数据
1、复制旧表的数据到新表(假设两个表结构不一样):sql语句:INSERT INTO 新表(字段1,字段2,.......) SELECT 字段1,字段2,...... FROM 旧表;2、结构相同insertintobselect*froma;...原创 2019-11-14 16:45:37 · 977 阅读 · 0 评论 -
数据库设计与建模
1.1 数据库设计的三范式 三范式:1.第一范式(1NF):确保每一列的原子性(做到每列不可拆分)2.第二范式(2NF):在第一范式的基础上,非主字段必须依赖于主字段(一个表只做一件事)3.第三范式(3NF):在第二范式的基础上,消除传递依赖反三范式:反三范式是基于第三范式所调整的,没有冗余的数据库未必是最好的数据库,有时为了提高运行效率,就必须降低范式标准,适当保留冗余...原创 2019-10-10 09:19:15 · 1438 阅读 · 0 评论 -
SQL的关系运算符的优先级问题
关系型运算符优先级高到低为:NOT >AND >OR原创 2019-09-26 14:53:53 · 2276 阅读 · 0 评论 -
Mysql的NULL值查询
查询运算符、like、between and 、in、not in对NULL值查询无效mysql为我们提供了查询空值的语法:IS NULL、IS NOT NULL。IS NULL(返回值为空的记录)select 列名 from 表名 where 列 is null;IS NOT NULL(返回值不为空的记录)select 列名 from 表名 wher...原创 2019-09-10 16:00:44 · 478 阅读 · 0 评论 -
mysql 命令行执行sql脚本
执行dashboard.sqlcat dashboard.sql | mysql -uroot -proot原创 2019-08-30 14:27:17 · 220 阅读 · 0 评论 -
ubuntu安装mysql
1.sudo apt-get install mysql-server2.apt-get install mysql-client3. sudo apt-get install libmysqlclient-dev安装过程中会提示设置密码什么的,注意设置了不要忘了,安装完成之后可以使用如下命令来检查是否安装成功:sudo netstat -tap | grep mysql...原创 2019-08-30 14:03:20 · 93 阅读 · 0 评论 -
向mysql数据库快速插入两万条数据库
package test.java;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.SQLException;import java.util.Date;import com.topband.cloud.commo...原创 2019-04-28 09:15:50 · 1757 阅读 · 0 评论 -
mysql字符串与时间转换
mysql时间与字符串相互转换涉及的函数date_format(date, format) 函数,MySQL日期格式化函数date_format()unix_timestamp() 函数str_to_date(str, format) 函数from_unixtime(unix_timestamp, format) 函数,MySQL时间戳格式化函数from_unixtime时...转载 2019-08-21 09:41:22 · 282 阅读 · 0 评论 -
mysql索引
1.索引分类①单值索引:即一个索引只包含单个列,一个表可以有多个单列索引②唯一索引:索引列的值必须唯一,但允许有空值③复合索引:即一个索引包含多个列2.索引语法索引在创建表时候,可以同时创建,也可以随时增加新的索引①创建索引语法:create [unique|fulltext|spatial] index index_name [using index_type] on...原创 2019-08-05 10:22:57 · 98 阅读 · 0 评论 -
mysql视图
1.视图概述视图(view)是一种虚拟存在的表。视图并不在数据库中实际存在,行和列数据来自定义视图的查询中使用的表,并且是在使用视图时动态生成的。通俗的讲,视图就是一条select语句执行后返回的结果集。所以我们在创建视图的时候,主要的工作就落在创建这条SQL查询语句上。视图相对于普通的表的优势主要包括以下几项。①简单:使用视图的用户完全不需要关心后面对应的表的结构、关联条件和...原创 2019-08-05 10:57:07 · 114 阅读 · 0 评论 -
SQL优化之explain分析
explain分析执行计划1.explain 之 idid 相同表示加载表的顺序是从上到下。id 不同id值越大,优先级越高,越先被执行。id 有相同,也有不同,同时存在。id相同的可以认为是一组,从上往下顺序执行;在所有的组中,id的值越大,优先级越高,越先执行。2.explain 之 select_type表示 SELECT 的类型,常见的取值,如下表所示:...原创 2019-08-08 16:19:37 · 295 阅读 · 0 评论 -
SQL索引的使用
通过explain , 查看执行计划,执行SQL时是否使用索引1.避免索引失效1). 全值匹配 ,对索引中所有列都指定具体值。该情况下,索引生效,执行效率高。2). 最左前缀法则如果索引了多列,要遵守最左前缀法则。指的是查询从索引的最左前列开始,并且不跳过索引中的列。匹配最左前缀法则,走索引:违背最左前缀法则 , 索引失效:如果符合最左法则,但是出现跳跃某一列,只有最...原创 2019-08-08 16:31:40 · 2022 阅读 · 0 评论 -
SQL优化
1.大批量插入数据当使用load 命令导入数据的时候,适当的设置可以提高导入的效率。对于 InnoDB 类型的表,有以下几种方式可以提高导入的效率:1) 主键顺序插入因为InnoDB类型的表是按照主键的顺序保存的,所以将导入的数据按照主键的顺序排列,可以有效的提高导入数据的效率。如果InnoDB表没有主键,那么系统会自动默认创建一个内部列作为主键,所以如果可以给表创建一个主键,将可...原创 2019-08-08 16:46:00 · 139 阅读 · 0 评论