总结一下常用的sql语句,测试版本:5.1

1.创建表

CREATE TABLE t_test
(id_ VARCHAR(32),title_ VARCHAR(255),content_ VARCHAR(2000),create_time_ VARCHAR(25),state_ VARCHAR(10)
)

2.插入语句

INSERT INTO t_test  VALUES ('1', '标题','内容','2013-01-30','1')
INSERT INTO t_test (id_,title_,state_) VALUES ('2', '标题2','0')

3.删除语句

DELETE FROM t_test WHERE id_='2'

4.修改语句

UPDATE t_test SET title_ = '标题改',content_='内容改' WHERE id_='1'

5.查询语句

SELECT * FROM t_test WHERE id_='1'
SELECT title_ AS 标题,content_ AS 内容 FROM t_test WHERE id_='1'
SELECT * FROM t_test LIMIT 2,3 //从序号2开始,查3条记录,做翻页最简单

6.表增加字段

ALTER TABLE t_test ADD click_num_ VARCHAR(10)

7.类型转换+求和

SELECT SUM(CAST(id_ AS DECIMAL)) FROM t_test 

8.判空 IFNULL(column,value)

SELECT IFNULL(SUM(CAST(click_num_ AS DECIMAL)),0) FROM t_test 

9.IF NOT EXISTS+NOT NULL(不为空)+UNIQUE(唯一)

CREATE TABLE IF NOT EXISTS t_test
(  id_ VARCHAR(32) NOT NULL UNIQUE,  title_ VARCHAR(255),  content_ VARCHAR(2000),  create_time_ VARCHAR(25),  state_ VARCHAR(10)
)

10.去掉重复数据      DISTINCT

SELECT DISTINCT title_,content_ FROM t_test1

11.表信息查询

SELECT * FROM information_schema.columns WHERE table_schema='cxy' AND table_name='t_test' AND column_name='title_';

12.删除表

DROP TABLE t_test

13.字符串连接

SELECT CONCAT(title_,':',content_) AS 标题文章 FROM t_test

14.截取字符串    LEFT(str,len)、RIGHT(str,len)、SUBSTRING(str,pos,len)

SELECT LEFT(content_,2) FROM t_test
SELECT RIGHT(content_,2) FROM t_test
SELECT SUBSTRING(content_,2,1) FROM t_test

15.数据库信息语句

SELECT VERSION(),USER(),DATABASE();

16.字段表达式

SELECT   id_ AS id,'正常' AS 状态,(id_*1.1) AS 主键转换 FROM t_test;
#会出现异常数据,类似:3.3000000000000003
SELECT  id_ AS id,'正常' AS 状态,CONVERT((id_*1.1),DECIMAL(10,2)) AS 主键转换 FROM t_test;

17.类型转换

#CAST(xxx  AS   类型) , CONVERT(xxx,类型)    SIGNED:整数
SELECT CONVERT('23.1',SIGNED);    #结果:23
SELECT CONVERT('23.9',SIGNED);    #结果:23
SELECT CONVERT('23.1',DECIMAL(4,2));  #DECIMAL(2+2,2),第一个参数是小数点前和小数点后的和值,第二个参数是小数点后的值
SELECT LEFT(CONVERT(100.1,CHAR),2);SELECT CAST('23.911' AS DECIMAL(4,2)); #结果:23.91

18.注意:distinct 会先排序,对于大的结果集来说是相当耗时的

19.表 广泛的定义有:永久表(create table)、临时表(子查询所返回的表)、虚拟表(create view)

SELECT t_temp.标题,t_temp.内容 FROM
(SELECT id_, title_ AS 标题,content_ AS 内容 FROM t_test) AS t_temp;    #t_temp 就是临时表

视图:

#创建试图不能包含子查询
CREATE VIEW t_simple_test AS
SELECT SUM(id_) FROM t_test;SELECT * FROM t_simple_test;DROP VIEW t_simple_test;

20.简化表名

#可以使用表别名 来简化长表明 可以直接写别名,也可以 使用as
SELECT t.id_,t.title_ FROM t_test t;
SELECT t.id_,t.title_ FROM t_test AS t;

21.and、or、not、between and/is null

# where 中的 and、or、not、between and/is null
SELECT * FROM t_test WHERE NOT(id_='1');
SELECT * FROM t_test WHERE title_ IS NOT NULL AND id_='2' OR id_='3';
SELECT * FROM t_test WHERE create_time_ BETWEEN '2012-12-01' AND '2013-01-31'

22.group by 和having

#having 能对分组后的数据进行筛选,尤其在使用聚集函数的时候
SELECT create_time_,SUM(click_num_) AS num FROM t_test
WHERE SUM(click_num_) > 2
GROUP BY create_time_ ; #这个查询是会报错的SELECT create_time_,SUM(click_num_) AS num FROM t_test
GROUP BY create_time_ HAVING num > 2;

23.排序

#ORDER BY
SELECT * FROM t_test ORDER BY click_num_;   #从小到大
SELECT * FROM t_test ORDER BY click_num_ DESC;  #从大到小
SELECT * FROM t_test ORDER BY click_num_ ,id_;  #多排序

24.不等于

SELECT * FROM t_test WHERE  id_ != '1';
SELECT * FROM t_test WHERE  id_ <> '1';

25.in 和 not in

SELECT * FROM t_test WHERE title_ IN('标题1','标题2');
SELECT * FROM t_test WHERE id_ IN(SELECT id_ FROM t_test WHERE click_num_ >3);
SELECT * FROM t_test WHERE id_ NOT IN(SELECT id_ FROM t_test WHERE click_num_ >3);

26.like 和 通配符

SELECT * FROM t_test WHERE title_ LIKE '标题_';
SELECT * FROM t_test WHERE title_ LIKE '%题%';

未完 待续。。。

声明:

1.原创文章,转载请标明并加本文连接。

2.文章反映个人愚见,如有异议欢迎讨论指正

【CXY】常用sql语句 -- mysql相关推荐

  1. 55:Mysql用户管理|常用sql语句|mysql数据库备份恢复

    2019独角兽企业重金招聘Python工程师标准>>> 1.Mysql用户管理: 场景,为了安全,新建的站点,创建新的用户,或者给已有用户授权,对某个库或者某个表有权限: 语法: g ...

  2. mysql备份数据库语句6_13.4 MySQL用户管理;13.5 常用sql语句;13.6 MySQL数据库备份恢复...

    扩展 : SQL语句教程 什么是事务?事务的特性有哪些? 根据binlog恢复指定时间段的数据 mysql字符集调整 使用xtrabackup备份innodb引擎的数据库  innobackupex  ...

  3. mysql用户管理,常用sql语句,mysql数据库备份恢复

    2019独角兽企业重金招聘Python工程师标准>>> mysql用户管理 grant all on . to 'user1' identified by 'passwd'; gra ...

  4. MySQL用户管理、常用sql语句、数据库备份

    13.4 MySQL用户管理 创建用户并授权 指定登录IP [root@centos-01linux ~]# mysql -uroot -p Enter password: Welcome to th ...

  5. MySQL用户管理、常用SQL语句、MySQL数据库备份恢复

    mysql用户管理 1.创建一个普通用户并授权 [root@gary-tao ~]# mysql -uroot -p'szyino-123' Warning: Using a password on ...

  6. 13.4 MySQL用户管理;13.5 常用sql语句;13.6 MySQL数据库备份恢复

    扩展 : SQL语句教程 http://www.runoob.com/sql/sql-tutorial.html 什么是事务?事务的特性有哪些? http://blog.csdn.net/yenang ...

  7. 经典MySQL语句大全和常用SQL语句命令的作用。

    转载自 http://blog.csdn.net/suyu_yuan/article/details/51784893 转自网络: 经典MSSQL语句大全和常用SQL语句命令的作用  下列语句部分是M ...

  8. 52次课(mysql用户管理、常用sql语句、 mysql数据库备份恢复)

    MySQL创建用户以及授权 默认用户是root用户,不可能所有人员都用root用户,创建用户防止误删除,因为mysql里边有多个库每个库里有很多表,所以需要给单独的用户做一些授权我只需要它对某一个数据 ...

  9. php面试专题---MySQL常用SQL语句优化

    php面试专题---MySQL常用SQL语句优化 一.总结 一句话总结: 原理,万变不离其宗:其实SQL语句优化的过程中,无非就是对mysql的执行计划理解,以及B+树索引的理解,其实只要我们理解执行 ...

最新文章

  1. 干货|使用合成数据集来做目标检测
  2. Qt for Android获取手机序列号/手机型号/手机制造商
  3. sqlplus中利用spool生成带日期的文件名
  4. 【算法笔记】B1058 选择题
  5. SVN工作笔记004---svn查看log提示_offline
  6. [Web Chart系列之六] canvas Chart 导出图文件
  7. 《贝叶斯思维:统计建模的Python学习法》——2.5 封装框架
  8. 15条经典实用的网站优化技巧
  9. 层次分析法java_AHP层次分析法java实现
  10. 【资料】舵机控制原理
  11. 万恶IE兼容之input change事件
  12. BJT转UTC世界协调时
  13. ps怎么制作流体_如何在PS中制作流体效果的字体
  14. linux系统电视播放格式,OpenPCTV--支持电视的 Linux
  15. python -u xxx.py
  16. 中国虚拟人哪家强?沙利文、IDC:小冰百度商汤位列第一梯队
  17. 击鼓传花击鼓次数相同c语言,击鼓传花
  18. hp台式机计算机编号怎么查,惠普电脑如何通过SN码查询配置
  19. 零柒歲末紀事(娛樂篇)-登高
  20. 全球与中国陶瓷背板市场投资策略分析及需求前景展望报告2022-2028年版

热门文章

  1. python调试程序的方法_调试Python程序的四种方法
  2. 在Firefox安装selenium
  3. 元宇宙照进现实 金蝶联手科大讯飞发布“数字员工”
  4. unraid应用_unraid 篇三:unraid docker之网页文件管理,强迫症的福音
  5. cdr怎么算曲线周长_CorelDRAW X3计算封闭曲线长度和面积
  6. 1.5Go语言的基本数据类型
  7. ospfdr选举规则_OSPF中DR和BDR的选举原则和注意事项
  8. Android 将本地资源图片转换成Drawable,进行设置大小
  9. Python绝技第一章 入门 python3实现密码破解
  10. 日本计划建造世界上速度最快的超级计算机