一、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;