SQL基础--语法

基础

sql三种注释:

 #注释
 SELECT *
 FROM mytable; --注释
 /* 
   注释.....
*/

数据库创建和使用:

create database test;
use test;

创建表

create table mytable(
id int not null auto_increment,
col1 int not null default 1,
co12 varchar(45) null,
col3 date null,
primary key ('id')
);

修改表

添加列

alter table mytable
add col char(20);

删除列

alter table mytbale
drop clumn col;

删除表

drop tablemytable;

插入

普通插入

insert into mytable(col1,col2) values(val1,val2);

插入检索出来的数据

insert into mytable(col1,col2)
select col1,col2
from mytable2;

将一个表的内容插入到一个新表

create table newtable as select * from mytbale;

更新

update mytable set col=val where id=1

删除

delete from mytable where id=1;
truncate table mytable;

可以清空表,也就是删除所有行。

使用更新和删除操作时一定要使用where字句,不然会把整张表的数据都破坏。可以先用select语句进行测试,防止错误删除。

查询

DISTINCT

相同值只会出现一次。他作用于所有列,也就是所有列的值都相同才算相同。(过滤掉多余的重复记录只保留一条)

select distinct col1,col2 from mytable;

LIMIT
限制返回的行数,可以有两个参数,第一个参数为起始行,从0开始;第二个参数为返回的总行数
返回前5行:

select * from mytable limit 0,5

返回第3~5行:

select * from mytable limit 2,3;

排序

ASC:升序(默认)
DESC:降序
可以按多个列进行排序,并且为每个列指定不同的排序方式:

select * from mytable order by col1 desc,col2 asc;

过滤

不就行过滤的数据非常大,导致通过网络传输了多余的数据,从而浪费了网络带宽。因此尽量使用sql语句来过滤不必要的数据,而不是传输所有的数据到客户端然后由客户端进行过滤。

select * from mytbale where col IS NULL;

下表显示了where子句可用的操作符

操作符说明
=等于
<小于
>大于
<>!=不等于
<=! >小于等于
>=!<大于等于
BETWEEN两个值之间
IS NULL为NULL值

注意:NULL与0、空字符串都不同。
ADNOR用于连接多个过滤条件。优先处理AND,当一个过滤表达式涉及到多个ADN和OR时,可以使用()来决定优先级,使得优先级关系更清晰。
IN操作符用于匹配一组值,其后也可以接一个SELECT子句,从而匹配子查询得到的一组值。
NOT操作符用于否定一个条件。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值