一、SQL教程

1、SQL语法

DML

select查询数据

update更新数据

delete删除数据

insert into插入数据

DDL

create database创建数据库表

alter database修改数据库

create table创建表

alter table修改表

drop table删除表

create index创建索引

drop index删除索引

set names utf8;设置使用的字符集

SQL语句对大小写不敏感。

2、SQL SELECT

select * from 表名

select 列名 from 表名

select lastname,firstname from persons;

3、SQL SELECT DISTINCT

select distinct column_name,column_name from table_name;

select distinct country from websites;

4、SQL WHERE

select column_name,column_name from table_name where column_name operator value;

select * from websites where country='cn'

SQL使用单引号('')来围绕文本值

如果数字字段,请不要使用单引号。

select * from websites where id=1

下面的运算符可以在where语句中使用:

=  等于

<> 不等于(在sql的一些版本中也可以用!=)

> 大于

< 小于

>= 大于等于

<= 小于等于

between 在某个范围内

like 搜索某个模式

in 制定针对某列的多个可能值

5、SQL ADN & OR

如果第一个条件和第二个条件都成立,则 AND 运算符显示一条记录。

如果第一个条件和第二个条件中只要有一个成立,则 OR 运算符显示一条记录。

select * from websites where country='cn' and alexa>50

select * from websites where country ='usa' or country='cn'

select * from websites where alexa > 50 and (country='cn' or country='usa')

6、SQL ORDER BY

ORDER BY 关键字用于对结果集按照一个列或者多个列进行排序。

ORDER BY 关键字默认按照升序对记录进行排序。如果需要按照降序对记录进行排序,您可以使用 DESC 关键字。

select column_name,column_name from table_name order by column_name,column_name asc|desc

select * from websites order by alexa

select * from websites order by alexa desc

select * from websites order by country,alexa

7、SQL INSERT INTO

INSERT INTO 语句用于向表中插入新记录。

insert into table_name values(v1,v2,v3,.....);

insert into table_name(c1,c2) values(v1,v2);

insert into websites(name,url,alexa,country) values('百度','https://www.baidu.com',4,'cn')

id列是自动更新的

insert into websites(name,url,country)values ('stackoverflow','http:/stackoverflow.com','ind')

8、SQL UPDATE

update table_name set c1 = v1,c2 = v2 where c3 = v3;

WHERE 子句规定哪条记录或者哪些记录需要更新。如果您省略了 WHERE 子句,所有的记录都将被更新!

update websites set alexa =5000,country='usa' where name='菜鸟教程'

9、SQL DELETE

delete from table_name where c1 = v1;

WHERE 子句规定哪条记录或者哪些记录需要删除。如果您省略了 WHERE 子句,所有的记录都将被删除!

delete from websites where name='百度' and country = 'cn'

删除所有记录

DELETE FROM table_name;



DELETE * FROM table_name;