SQL语句快速介绍

在做机房收费系统时,因为要查询和处理数据库中的数据,所以用到了大量SQL语句。SQL(Structured Query Language)指结构化查询语言,是用于访问和处理数据库的标准的计算机语言。

SQL的作用有很多,包括从数据库中获取数据,插入、更新数据库中的数据,删除数据库记录,创建、修改新数据库,在数据库中创建、删除表等。

本来打算就写几个简单的我常用的语句的介绍,但是写着写着就不会写了,看到了这个快速参考用的表,就想将他加以整理,这样也很清晰。这些资料都是原有的,我只是加以整理、整合。一些简单的介绍,只是希望在使用SQL语句时能想到有这么个语句。

注:常用的黑体显示。这里的常用和不常用,是我根据自己是否用过决定的。

列名(s) 符合条件的所有列


语句


语法


作用/解释


辅助语句

不能单独使用,可以和SELECT语句组合使用。更好的查询数据库数据。


AND / OR


SELECT 列名(s)

FROM 表名WHERE 条件
AND|OR 条件


And,同True才True;Or:同False才False。


AS (alias for column)


SELECT 列名 AS 列的别名
FROM 表名


为列名称指定别名。


AS (alias for table)


SELECT 列名FROM 表名AS 表的别名


为表名称指定别名。


BETWEEN


SELECT 列名(s)FROM 表名WHERE 列名
BETWEEN 值1 AND 值2


BETWEEN 操作符在 WHERE 子句中使用,作用是选取介于两个值之间的数据范围。这些值可以是数值、文本或者日期。


GROUP BY(注1)


SELECT 列名, 合计函数(列名)

FROM 表名

WHERE 列名 操作符 值

GROUP BY 列名


用于结合合计函数(如SUM),根据一个或多个列对结果集进行分组。


HAVING


SELECT 列名1,合计函数(列名2)FROM 表名

GROUP BY 列名1 HAVING

SUM(列名2) 条件 值


在 SQL 中增加 HAVING 子句,可与合计函数一起使用。


IN


SELECT 列名(s)FROM

表名WHERE

列名IN (值1,值2,..)


IN 操作符允许我们在 WHERE 子句中规定多个值。

和And相似。


LIKE(注2)

NOTLIKE


SELECT 列名(s) FROM

表名WHERE 列名LIKE

指定模式


LIKE 操作符用于在 WHERE 子句中搜索列中的指定模式。


ORDER BY


SELECT 列名(s)
FROM 表名
ORDER BY 列名 [ASC|DESC]


用于根据指定的列对结果集进行排序。

默认按照升序对记录进行排序。降序对记录进行排序,可以使用 DESC 关键字。


WHERE


SELECT 列名(s)FROM 表名WHERE 条件


如需有条件地从表中选取数据,可将 WHERE 子句添加到 SELECT 语句。


查询语句 Select


SELECT


SELECT 列名(s)
FROM 表名


根据列名,获取表中一列或多列。


SELECT *


SELECT * FROM 表名


获取表中所有列


SELECT DISTINCT


SELECT DISTINCT

列名(s) FROM 表名


用于返回唯一不同的值。

在表中,可能会包含重复值。Distinct可以只列出不同值。相同值合并。


SELECT INTO
(used to create backup copies of tables)


SELECT * INTO 新表名
FROM 原表名

or

SELECT 列名(s)
INTO 新表名FROM 原表名


SELECT INTO 语句从一个表中选取数据,然后把数据插入另一个表中。

SELECT INTO 语句常用于创建表的备份复件或者用于对记录进行存档。


创建 Create 

创建新数据库、新索引、新表、唯一的索引、新视图


CREATE DATABASE


CREATE DATABASE 数据库名


创建数据库


CREATE INDEX (注3)


CREATE INDEX 索引名
ON 表名 (列名)


在表中创建索引。


CREATE TABLE


CREATE TABLE 表名
(列名1 数据类型,
列名2 数据类型,.......)


创建表


CREATE UNIQUE INDEX


CREATE UNIQUE INDEX

索引名ON 表名(列名)


在表上创建一个唯一的索引。唯一的索引意味着两个行不能拥有相同的索引值。

Note:列名,规定需要索引的列。


CREATE VIEW


CREATE VIEW 视图名AS
SELECT 列名(s)FROM 表名WHERE 条件


创建视图


增加记录


ALTER TABLE (add column)


ALTER TABLE 表名
ADD 列名 datatype


改变表,通过增加列


INSERT INTO


INSERT INTO 表名
值S (值1, 值2,....)

or

INSERT INTO 表名
(列名1, 列名2,...)
值S (值1, 值2,....)


插入新记录


删除 Delete /Drop(撤销)


ALTER TABLE (drop column)


ALTER TABLE 表名
DROP COLUMN 列名


改变表,通过删除列


DELETE FROM


DELETE(*) FROM 表名

or

DELETE FROM 表名称

WHERE 列名称 = 值


删除所有的行,但不删除表

语句用于删除表中的某行


DROP DATABASE


DROP DATABASE 数据库名


删除数据库


DROP INDEX


DROP INDEX 表名.索引名


删除表格中的索引


DROP TABLE


DROP TABLE 表名


删除表(表的结构、属性以及索引也会被删除)


TRUNCATE TABLE


TRUNCATE TABLE 表名


仅删除表中的数据(不删除表的结构、属性以及索引)


修改 Update


UPDATE


UPDATE 表名称 SET

列名称=新值,列名称=新值…

WHERE 列名称 = 某值


修改表中的数据。

注1.

SQL操作符(运算符)

下面的运算符可在 WHERE 子句中使用:


操作符


描述


=


等于


<>


不等于


>


大于


<


小于


>=


大于等于


<=


小于等于


BETWEEN


在某个范围内


LIKE


搜索某种模式

注2.

SQL通配符

在搜索数据库中的数据时,SQL 通配符可以替代一个或多个字符。SQL 通配符必须与 LIKE 运算符一起使用。


通配符


描述


%


替代一个或多个字符


_


仅替代一个字符


[charlist]


字符列中的任何单一字符


[^charlist]

or

[!charlist]


不在字符列中的任何单一字符

注3:

时间: 2024-09-11 01:16:32

SQL语句快速介绍的相关文章

MySQL字段自增自减的SQL语句示例介绍_Mysql

MySQL的自增语句大家应该都很熟悉 也很简单 复制代码 代码如下: update `info` set `comments` = `comments`+1 WHERE `id` = 32 这样就可以了,但是有时候我们会涉及到做减法, 例如:文章的评论数,在删除或者锁定了一条评论之后需要对该文章总评论数减一 comments smallint(5) unsigned 文章评论总数统计字段 无符号即 0 ~ 65535 之间的数值 1. 通常情况下是可以类似上面自增的方法 把 +号 改成 -号 就

PHP学习之SQL语句快速入门_Mysql

Select * from tablename SQL> select * from employees; Select select list from tablename SQL> select employee_id,first_name from employees; Select distinct - from tablename SQL> select distinct manager_id from employees; ||连接符使用以及 加减乘除以及括号的使用 SQL&

以数据库字段分组显示数据的sql语句(详细介绍)_Mysql

复制代码 代码如下: <?php$dsn = "mysql:host=localhost;dbname=group";$db = new PDO($dsn, 'root', '');$db->exec('set names utf8'); $sql = "select conf_id from  `group` group by conf_id";//$pre = $db->prepare($sql);//$result_arr = array()

6条比较有用的MySQL数据库操作的SQL语句小结

在MySQL数据库操作中,我们常常编写一些SQL语句来实现自己想要的功能.但是对于初学MySQL数据库的人来说这似乎又有一定的难度.本文我们总结了六条比较有用的SQL语句,初学者可以套用下面的格式,接下来就让我们一起来了解一下这部分内容. 1.计算年数 如果您想通过生日来计算这个人的年龄,可以用以下的语句来实现: SELECT DATE_FORMAT(FROM_DAYS(TO_DAYS(now()) - TO_DAYS(@dateofbirth)), '%Y') + 0; 2.两个时间的差 取得

如何建视图,请给我SQL语句!

问题描述 如何建视图,请给我SQL语句! 解决方案 creat view 视图名? 解决方案二: 快速构建视图或SQL语句快速构建视图或SQL语句 解决方案三: create view 视图名 as() {括号里是你需要在视图里的列,可以是select语句} 解决方案四: create view 视图名 as(select a.ID,a.name as AtypeName,b.name as BtypeName from (表1 left join 表2 on 表1.AtypeID =表2.ty

六条比较有用的MySQL数据库操作的SQL语句小结_Mysql

在MySQL数据库操作中,我们常常编写一些SQL语句来实现自己想要的功能.但是对于初学MySQL数据库的人来说这似乎又有一定的难度.本文我们总结了六条比较有用的SQL语句,初学者可以套用下面的格式,接下来就让我们一起来了解一下这部分内容. 1.计算年数 如果您想通过生日来计算这个人的年龄,可以用以下的语句来实现: SELECT DATE_FORMAT(FROM_DAYS(TO_DAYS(now()) - TO_DAYS(@dateofbirth)), '%Y') + 0; 2.两个时间的差 取得

分组字符合并SQL语句 按某字段合并字符串之一(简单合并)

标题:按某字段合并字符串之一(简单合并) 描述:将如下形式的数据按id字段合并value字段. id    value ----- ------ 1     aa 1     bb 2     aaa 2     bbb 2     ccc 需要得到结果: id     value ------ ----------- 1      aa,bb 2      aaa,bbb,ccc 即:group by id, 求 value 的和(字符串相加) 1.sql2000中只能用自定义的函数解决 cr

MySQl优化千万数据级快速分页sql语句

数据表 collect ( id, title ,info ,vtype) 就这4个字段,其中 title 用定长,info 用text, id 是逐渐,vtype是tinyint,vtype是索引.这是一个基本的新闻系统的简单模型.现在往里面填充数据,填充10万篇新闻. 最后collect 为 10万条记录,数据库表占用硬盘1.6G.OK ,看下面这条sql语句:  代码如下 复制代码 select id,title from collect limit 1000,10; 很快:基本上0.01

快速掌握一些异常精妙的SQL语句

精妙的"SQL"语句: ◆复制表(只复制结构,源表名:a 新表名:b) SQL: select * into b from a where 1<>1 ◆拷贝表(拷贝数据,源表名:a 目标表名:b) SQL: insert into b(a, b, c) select d,e,f from b; ◆显示文章.提交人和最后回复时间 SQL: select a.title,a.username,b.adddate from table a, (select max(adddate