创建数据库
1
|
create database dbname;
|
删除数据库
1
|
drop database dbname;
|
选择数据库
1
|
use dbname;
|
创建表
1 2 3 4 5 6 7 8 |
CREATE TABLE IF NOT EXISTS `book`( `id` INT UNSIGNED AUTO_INCREMENT, `title` VARCHAR(100) NULL, `author` VARCHAR(40) NOT NULL, `date` DATE, INDEX title_index(title(100)), PRIMARY KEY ( `id` ) )ENGINE=InnoDB; |
- AUTO_INCREMENT定义列为自增的属性,默认自增1,一般用作主键
- NOT NULL指定该字段不能为空, 在操作数据库时如果输入该字段的数据为NULL ,就会报错
- PRIMARY KEY关键字用于定义列为主键
- ENGINE 设置存储引擎
- CHARSET 设置编码
- INDEX设置列为普通索引、也可以使用UNIQUE指定唯一索引、 FULLTEXT指定全文索引
添加表字段
1
|
alter table book add press varchar;
|
删除表字段
1
|
alter table book drop press;
|
修改表字段
1
|
alter table book modify press char;
|
查看表结构
1
|
show columns from book;
|
修改表名
1
|
alter table book RENAME TO book1;
|
删除表
1
|
drop table book;
|
创建索引
1 2 3 |
create index title_index ON book(title(100)); alter table book ADD INDEX title_index(title); |
删除索引
1
|
drop index title_index ON book;
|
插入数据
1 2 3 4 5 6 7 |
insert into book values(值1,值2,....);#值的顺序与字段在表中的顺序一致 insert into book(title,author) values('Java学习路线','Java学习录');#为指定字段赋值 insert into book(title,author) select title,author from test;#copy另一张表的数据 |
修改表数据
1
|
update table set title='学习笔记',date='2019-05-21'
|
删除表数据
1 2 3 |
truncate table book;#删除表中所有数据 delete from book where xx=yy;#根据条件删除表中数据 |
查询
1
|
select * from book;
|
常用函数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
character_length("title") #字符串title的字符数 concat("title","author") #将字符串title和author合并为一个字符串 concat_ws(",""title","author") #将字符串title和author合并为一个字符串,合并时使用逗号作为分隔符 lower("title") #将字符串title的内容转为小写 upper("title") #将字符串title的内容转为大写 reverse("title") #反转字符串title abs("price") #求price的绝对值 avg("price") #求price的平均值 count("price") #求price的总记录数 max("price") #求price的最大值 min("price") #求price的最小值 sum("price") #求price的和 rand()#返回0-1之间的随机数 adddate("date",n) #date加上n天的时间 addtime("date",n) #date加上n秒的时间 curdate() #当前日期 current_time() #当前时间 current_timestamp() #当前日期时间 datediff(d1,d2) #d1和d2相隔的天数 period_diff(d1,d2) #d1和d2相隔的月数 subdate(d,n) #d减去n天的日期 subtime(d,n) #d减去n秒的时间 connection_id()#服务器当前连接数 |
case when
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
CASE expression WHEN condition1 THEN result1 WHEN condition2 THEN result2 .. WHEN conditionN THEN resultN ELSE result END |
IF
1
|
IF(expr,v1,v2)#如果表达式 expr 成立,返回结果 v1;否则,返回结果 v2。
|
IFNULL
1
|
IFNULL(v1,v2)#如果 v1 的值不为 NULL,则返回 v1,否则返回 v2
|
去除结果集中的重复元素
1
|
select distinct(title) from book;
|
模糊查询
1 2 3 |
select * from book where title="Java%"; select * from book where title="%Java"; select * from book where title="%Java%"; |
合并结果集
1
|
select title from book1 union select title from book2
|
连接(left jion/right jion/jion/逗号)
1 2 3 4 |
select * from book1 left jion book2 where xx=yy select * from book1 right jion book2 where xx=yy select * from book1 jion book2 where xx=yy select * from book1 , book2 where xx=yy |
分组
1
|
select count(*) from book group by author ='Java学习录'
|
排序
1 2 |
select * from book order by date ASC#默认就是ASC 可省略,按date升序排列 select * from book order by date DESC#按date降序排列 |
分页
1 2 3 |
select * from table limit 5; #返回前5行 select * from table limit 0,5; #同上,返回前5行 select * from table limit 5,10; #返回6-15行 |
推荐阅读
- SpringCloud学习系列汇总
- 为什么一线大厂面试必问redis,有啥好问的?
- 多线程面试必备基础知识汇总
- Java集合源码分析汇总-JDK1.8
- Linux常用命令速查-汇总篇
- JVM系列文章汇总
相关推荐
mysql 常用 语句 真的很不错,大家可以看一下
mysql sql常用语句大全
Oracle Sql语句转换成Mysql Sql语句java 源码,非常简单,只要给定源oracle sql语句地址,和生成目标文件地址运行即可。
这是我学习mysql时顺便整理的sql语句,从创建表,修饰表到增删改查、视图、存储过程、触发器、索引、函数、常用的循环、判断。
mysql常用sql语句,绝对适合广大mysql数据库学习爱好者收藏,学习!
一些常用的mysql中的sql语句,本人业余时间整理而成
MySQL SQL查询语句大全集锦(经典珍藏),可以每天练习的
《Effective MySQL之SQL语句最优化》提供了很多可以用于改进数据库和应用程序性能的最佳实践技巧,并对这些技巧做了详细的解释。《Effective MySQL之SQL语句最优化》希望能够通过一步步详细介绍SQL优化的方法,帮助...
《Effective MySQL之SQL语句最优化》是由MySQL专家Ronald Bradford撰著,书 中提供了很多可以用于改进数据库和应用程序性能的最佳实践技巧,并对这些技巧 做了详细的解释。本书希望能够通过一步步详细介绍SQL优化...
2023最新mysql的sql语句优化方法技巧面试题总结.docx2023最新mysql的sql语句优化方法技巧面试题总结.docx2023最新mysql的sql语句优化方法技巧面试题总结.docx2023最新mysql的sql语句优化方法技巧面试题总结.docx2023...
MySQL SQL优化的小册子。 对优化这块重点阐述了相关原理与技术手段。
本文档是有关于MySQL的最常用的sql语句,非常的方便查询和复习
NULL 博文链接:https://yxwang0615.iteye.com/blog/970114
六个有用的MySQL的SQL语句 六个有用的MySQL的SQL语句
MySQL常用基本SQL语句 (基础知识)
sql语句
《Effective MySQL之SQL语句最优化》数据库SQL
mysql sql语句大全,mysql sql语句大全
10、几个简单的基本的sql语句 11、几个高级查询运算词 12、使用外连接 13、分组:Group by: 14、对数据库进行操作: 15.如何修改数据库的名称: 第二部分、 提升 1、复制表 2、拷贝表 3、跨数据库之间表的...