`

常用sql语句 -- mysql

    博客分类:
  • sql
阅读更多

总结一下常用的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(唯一)+PRIMARY KEY(主键)

CREATE TABLE IF NOT EXISTS t_test  
(  
    id_ VARCHAR(32) NOT NULL UNIQUE PRIMARY KEY,  
    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 '%题%';

 

27.临时事务

BEGIN;  #开始事务
INSERT INTO t_test  VALUES ('11', '标题11','内容11','2013-01-30','1',1);  
SELECT * FROM t_test;  #这里的查询是有上面的记录的,但是实际库中并没有这个记录
ROLLBACK;  #回滚

 

 

分享到:
评论

相关推荐

    常用的SQL语句--mysql

    SQL,全称Structured Query Language,是用于管理...SQL语句的应用非常广泛,从简单的数据查询到复杂的业务逻辑处理,都离不开它的支持。熟练掌握SQL是进行数据库操作和管理的基础,也是数据分析和软件开发的重要技能。

    Mysql常用SQL语句

    MySQL常用SQL语句 MySQL是一种关系型数据库管理系统,使用SQL(Structured Query Language)语言来管理和操作数据库。下面是MySQL中一些常用的SQL语句: 创建、删除和基本查询 * 显示数据库:`show databases;` *...

    Oracle Sql语句转换成Mysql Sql语句

    本项目提供了一个Java源码工具,能够帮助用户便捷地将Oracle SQL语句转换为MySQL SQL语句。 Oracle SQL与MySQL SQL的主要差异在于以下几个方面: 1. **数据类型**:Oracle支持的数据类型如NUMBER、LONG、RAW等在...

    SQL语句-常用的sql语句生成器.zip

    在这个“SQL语句-常用的sql语句生成器.zip”压缩包中,很可能包含了一个工具或一系列资源,旨在帮助用户快速生成常见的SQL语句,从而简化数据库操作。 1. **SQL基础概念**: - **SELECT语句**:用于从数据库中检索...

    sql常用语句-中文手册直接运行

    总的来说,“sql常用语句-中文手册直接运行”是一个很好的资源,适合初学者和有一定基础的数据库操作人员,旨在帮助他们熟练掌握SQL,特别是在Oracle环境中高效地编写和执行SQL语句。通过这个手册,读者不仅可以学习...

    MySQL常用sql语句生成器

    下面将详细介绍MySQL中的SQL语句及其生成器的相关知识。 1. SQL基础概念 SQL,全称为结构化查询语言,是用于创建、查询、更新和删除数据库中数据的标准语言。它分为DQL(查询语言)、DML(数据操纵语言)、DDL...

    mysql-connector-java-8.0.11

    在这个"mysql-connector-java-8.0.11"压缩包中,包含的是MySQL官方发布的针对Java的最新版本连接器,版本号为8.0.11。 1. **JDBC接口**:JDBC是Java语言访问数据库的标准接口,由Java SE的java.sql包提供。它定义了...

    mysql 常用sql语句整理

    在这个主题中,我们将深入探讨MySQL中的一些常用SQL语句,特别是与数据库连接有关的概念,包括左连接、右连接和全连接。 首先,SQL(Structured Query Language)是用于管理和处理关系数据库的标准语言。在MySQL中...

    jdbc-mysql-connector-j-8.0.31.jar jdbc-sqljdbc41.jar

    本话题将深入探讨两个关键的Java数据库连接器(JDBC)驱动,即`jdbc-mysql-connector-j-8.0.31.jar`(用于MySQL)和`jdbc-sqljdbc41.jar`(用于SQL Server),以及它们在JMeter中的应用。 首先,`jdbc-mysql-...

    Effective MySQL之SQL语句最优化.pdf

    尽管如此,我将基于标题和描述中提供的关键词“Effective MySQL之SQL语句最优化”来构建知识点。 1. SQL语句最优化的概念:在数据库管理中,对SQL语句进行优化是提高数据库性能的关键环节。最优化的SQL语句能够在...

    SQL语句-ALTER FUNCTION和ALTER INSTANCE​.pdf

    ### SQL语句详解:ALTER FUNCTION 和 ALTER INSTANCE #### 一、ALTER FUNCTION 语句 **ALTER FUNCTION** 语句在 SQL 中主要用于修改已存在的函数。然而,并非所有的数据库管理系统(DBMS)都直接支持该语句。不同...

    MYSQL数据库常用SQL语句

    MYSQL数据库常用SQL语句

    mysql常用sql语句

    ### MySQL常用SQL语句知识点详解 #### 一、基本操作 **标题与描述解析:** - **标题**:“mysql常用sql语句” — 指的是MySQL中常用的SQL语句集合。 - **描述**:“mysql常用sql语句,绝对适合广大mysql数据库学习...

    省市区字典sql-mysql-sqlserver.zip

    标题 "省市区字典sql-mysql-sqlserver.zip" 暗示了这是一个关于数据库管理系统的资源包,其中包含了适用于MySQL和SQL Server两种数据库的SQL语句,主要用于实现省市区的三级联动功能。这种功能常见于地理信息系统的...

    mysql-全国五级省市县镇村sql语句

    mysql-全国五级省市县镇村sql语句,直接在mysql数据库中执行sql语句即可。

    MYSQL常用基本sql语句总结

    本文档是有关于MySQL的最常用的sql语句,非常的方便查询和复习

    mysql sql常用语句大全

    mysql sql常用语句大全

    PB 从SQL语句获取数据存储(MySQL)

    标题 "PB 从SQL语句获取数据存储(MySQL)" 指的是使用PowerBuilder (PB) 开发工具,通过SQL语句从MySQL数据库中检索和处理数据存储的过程。在这个Demo中,PB11.5 版本被用作开发环境,而MySQL作为后台数据库系统。...

    基础常用SQL语句.pdf

    本文档总结了基础常用的SQL语句,涵盖了MYSQL基础语句、数据库创建、数据表创建、数据插入、查询、更新、删除、子句、连接、NULL值处理、正则表达式、ALTER命令、服务器元数据、MYSQL及SQL注入、MYSQL导出数据等多个...

    Python使用sql语句对mysql数据库多条件模糊查询.pdf

    Python 使用 SQL 语句对 MySQL 数据库多条件模糊查询 Python 是一种广泛使用的编程语言,而 MySQL 是一种常用的关系型数据库管理系统。在实际应用中,我们经常需要使用 Python 连接 MySQL 数据库,并执行多条件...

Global site tag (gtag.js) - Google Analytics