您的位置:首页 > 数据库

SQL学习笔记(1)

2016-07-29 18:47 295 查看
【7月28日 学习记录】

1.SQL SELECT
SELECT语句用于从数据库中选取数据。

SELECT colum_name,column_name FROM table_name;
SELECT * FROM table_name;
首先,要注意的是,sql语句中关键字和变量是不存在大小写的关系的,但是为了区别,一般关键字大写。
其次,每条语句后都要有分号。
最后,主要colum_name和table_name要写争取。

2.SQL SELECT DISTINCT
一个列中,可能存在多个重复的值,通过DISTINCT,可以排除重复的值,只留下不重复的。

SELECT DISTINCT column_name FROM table_name;
3.SQL WHERE
WHERE语句是用于提取那些满足指定标准的记录。

SELECT colum_name,column_name FROM table_name WHERE column_name operator value;
operator 代表运算符
value代表数值,如果数值是字符型的,那么要添加单引号。
附:
WHERE 子句中的运算符
下面的运算符可以在 WHERE 子句中使用:

 描述
=等于
<>不等于。注释:在 SQL 的一些版本中,该操作符可被写成 !=
>大于
<小于
>=大于等于
<=小于等于
BETWEEN在某个范围内
LIKE搜索某种模式
IN指定针对某个列的多个可能值
4.SQL AND&OR

对于AND,要前后两者都要成立;对于OR,则有一方成立即可。

SELECT * FROM table_name WHERE column_name = ‘ ’AND column_name=‘ ’;
OR语句同理。

5.SQL ORDER BY
ORDER BY关键字用于对结果集进行按照一列或者多列的排序。
默认情况是按照升序排列(ASC),如果需要奖序,则添加DESC。

SELECT * FROM table_name ORDER BY column_name ;
6.SQL INSERT INTO
INSERT INTO语句用于插入到表中。

INSERT INTO table_name(column_name,column_name) VALUES(value1,value2);
注意,插入的表中,是否有数值是自动递增的。

7.SQL UPDATE
UPDATE用于更新已经存在的值。

UPDATE table_name

SET column1=value1,column2=value2,...

WHERE some_column=some_value;
注意,使用update的时候,一定要使用where来限定条件,不然整个表就全更新了。
【7月29日 学习记录】

1.SQL SELECT TOP
SELECT TOP用于规定要返回记录的数量

用法:

SELECT column_name(s) FROM table_name LIMIT number;
实例:

SELECT * FROM PERSON LIMIT 5;
数字的作用其实就是返回多少条语句。

2.SQL LIKE操作

LIKE操作符用于在WHERE字句中搜索列的指定模式
语法:

SELECT column_name(s) FROM table_name WHERE column_name LIKE pattern ;
pattern中要使用通配符进行模糊查询。

3. SQL IN
IN 允许在where中使用规定多个值
语法:

SELECT column_name(s) FROM table_name WHERE column_name IN (value1,value2...)
4.SQL BETWEEN
BETWEEN用于取介于两个值之间的数据范围内的值。这些值可以是数值,文本,和日期。
语法:

SELECT column_name(s) FROM table_name WHERE column_name BETWEEN value1 and value2;
BETWEEN和IN最好进行配合使用。

5.SQL别名。
通过使用别名,尤其是表别名,可以更快的查找。
表的SQL别名语法:

SELECT column_name(s) FROM table_name AS alias_name;
在下面的情况下,使用别名很有用:

在查询中涉及超过一个表

在查询中使用了函数

列名称很长或者可读性差

需要把两个列或者多个列结合在一起

总之来说,别名很重要。

6.SQL 连接(JOIN)
(1)INNER JOIN

通过两张表相同的关键字进行连接。

SELECT column_name(s)
FROM table1
JOIN table2
ON table1.column_name=table2.column_name;

(2)LEFT JOIN
以左表为基准,进行匹配,即使右表中没有左表的数据,也会进行显示。
SELECT column_name(s)
FROM table1
LEFT JOIN table2
ON table1.column_name=table2.column_name;

select.....后接要显示的列

from ... left join ... 要连接的两张表

on....连接的条件
同样的,right join也是同理的。

7.SQL UNION
UNION操作符用于合并两个或者多个SELECT语句。
但是要注意的是,UNION连接的两个select语句,必须要是相同数量的列,以及相似的数据类型,才可以使用。

SELECT column_name(s) FROM table1

UNION

SELECT column_name(s) FROM table2;
UNION只显示一次出现的,不显示重复的。
如果需要显示重复的,则需要使用UNION ALL。

8.创建数据库和表
(1)创建数据库

CREATE DATABASE dbname;
(2)创建表

首先要在数据库下进行运行

CREATE TABLE table_name

{

column_name1 data_type(size),

column_name2 data_type(size),

column_name3 data_type(size),

....
};
9.SQL 约束
在 SQL 中,我们有如下约束:

NOT NULL - 指示某列不能存储 NULL 值。

UNIQUE - 保证某列的每行必须有唯一的值。

PRIMARY KEY - NOT NULL 和 UNIQUE 的结合。确保某列(或两个列多个列的结合)有唯一标识,有助于更容易更快速地找到表中的一个特定的记录。

FOREIGN KEY - 保证一个表中的数据匹配另一个表中的值的参照完整性。

CHECK - 保证列中的值符合指定的条件。

DEFAULT - 规定没有给列赋值时的默认值。

(1)NOT NULL

约束字段必须包含值,如果不包含,那么无法进行插入或者更新操作。
(2)UNIQUE

UNIQUE是约束唯一标识数据库表中的每条记录。

同时UNIQUE可以是空值。
(3)PRIMARY KEY

是主键,一个表只能有一个PRIMARY KEY!
(4)FOREIGN KEY

作为另一个表中的外键

(5)CHECK

约束特定值

(6)DEFAULT

插入默认值
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: