ps:sql对大小写不敏感
一些重要的SQL命令
- select-从数据库中提取数据
- update-更新数据库中的数据
- delete-从数据库中删除数据
- insert into-想数据库中插入新数据
- create database-创建新数据库
- alter database-修改数据库
- create table-创建新表
- alter table-改变数据库表
- drop table-删除表
- create index-创建索引
- drop index-删除索引
SQL SELECT
select column_name,column_name from table_name;
&
select * form table_name;
SQL DISTINCT
在表中有可能会包含多个重复值,有时希望仅仅列出不同(distinct)的值。
DISTINCT关键词用于返回唯一不同的值。
select distinct column_name,column_name from table_name;
ps:只能先写distinct 在写列名,不能先写列名,在写distinct,如
select name,distinct date from user;
是错误的;
SQL WHERE
select column_name,column_name from table_name where column_name operator value;
文本字段VS 数值字段
SQL使用单引号来环绕文本值,如
select * from websites where country='CN'
但是如果是数值字段,请不要使用引号。
where子句中的运算符
运算符 | 描述 |
---|---|
= | 等于 |
<> | 不等于 ps:在一些sql版本中,该操作符可能会是!= |
> | 大于 |
< | 小于 |
>= | 大于等于 |
<= | 小于等于 |
between | 在某个范围 |
like | 搜索某种模式(通配符) |
in | 指定针对某个列的多个可能值 |
SQL AND&OR
如果第一个条件和第二个条件都成立,and运算符显示一条记录
如果第一个或者第二个条件都成立,or运算符显示一条记录
如
and
select * from websites where country = 'CN'
and alexa>50;
////////
or
select * from websites where country='USA'
or contry='CN';
结合 and&or
select * from websites
where Alexa > 5
and (country='CN' or country='USA');
SQL ORDER BY
order by 关键字用于对结果集按照一个列或者多个列进行排序。
order by 关键字默认按照升序怼记录进行排序。如果需要按照降序对记录进行排序,可以用DESC关键字。
select column_name,column_name
from table_name
order by column_name,column_name ASC|DESC;
order by多列
select * from websites order by country,alexa;
先按照 country排列,如果country 相同 那么按照alexa排列;
SQL INSERT INTO
insert into 用于向表中插入新纪录。
insert into 有两种编写形式
第一种无需指定要插入数据的列名,只需要提供被插入的值即可:
insert into table_name
values (value1,value2,value3,...);
第二种形式需要指定列名以及被插入的值:
insert into table_name(column1,column2,column3,...)
values (value1,value2,value3,....);
SQL UPDATE
update用于更新表中存在的记录。
update table_name
set column1=value1,column2=value2,...
where some_column=some_value;
ps:如果省略了where语句,那么所有的记录都将更新。慎重
SQL DELETE
delete语句用于删除表中的行。
delete from table_name
where some_column = some_value;
ps:省略了where子句,所有的记录都将被删除!
删除所有数据
可以在不删除表的情况下,删除表中所有的行。意味着表结构、属性、索引将保持不变;
delete from table_name;
or
delete * from table_name;