常用的sql语句

1、 查看数据库中的表或查询数据库;
show tables/databases;

2、 查看数据库中所有的表

show tables;(前提是使用use database 数据库;)

3、 查看数据表结构

describe 表名;

4、 创建数据库

CARATE DATABASE 数据库名;

create database studentoa;

5、 删除数据库

DROP DATABASE 数据库名;

Drop database studentoa;

6、 使用数据库

use 数据库名;

use studentoa;

7、 创建数据表

CREATE TABLE 表名 ( 列名 数据类型, 列名 数据类型, 列名 数据类型 ); create table information ( id int primary key, name nvarchar(10) not null, age int, sex nvarchar(6) )

8、 删除数据表中的列

ALTER TABLE 表名 DROP COLUMN 列名;

alter table information drop column sex;

9、 增加数据表中的列

ALTER TABLE 表名

ADD 列名 数据类型;

Alter table information add home varchar(20);

10、 数据表中添加数据

INSERT INTO 表名[(列名,列名,列名)] VALUES (值,值,值);

insert into information(id,name,age,home) values (001,'张三',23,'黑龙江');

insert into information values(002,'李四',25,'沈阳');

insert into information(id,name,home) values(003,'赵六','吉林');

11、只修改列的数据类型的方法:
    通常可以写成 alter table 表名 modify column 列名 新的列的类型
    例如:student表中列sname的类型是char(20),现在要修改为varchar(20),SQL语句如下
     alter table student modify column sname varchar(20);

    同时修改列名和列的数据类型的方法:
    通常可以写成 alter table 表名 change column 旧列名 新列名 新的列类型
    例如:student表中列sname的类型是char(20),现在要修改为stuname varchar(20),SQL语句如下
     alter table student change column sname stuname varchar(20);

12、 alter table 表名 alter column 列名 数据类型;

alter table information alter column home varchar(10);

13、 删除数据表中的某一行数据;

DELETE FROM 表名 WHERE 筛选条件;

delete from information where name='田七';

14、 更改数据表中的某一项信息

UPDATE 表名 SET 更改项 = '修改内容' WHERE 筛选条件;

update information set age=29 where name='赵六';

15、 筛选条件中的比较运算符 Or运算符的应用

select * from information where age>25 or home='沈阳' or home='吉林' or home='黑龙江';(筛选出年龄大于25的或者家乡是东北三省的人员信息) And运算符的应用

select * from information where age>25 and home='沈阳' or home='吉林' or home='黑龙江';(筛选出年龄大于25并且家乡是东北三省的人员信息)

16、 建表之后添加约束主键,删除约束主键

ALTER TABLE表名 ADD CONSTRAINT 约束名 约束类型 约束描述; ALTER TABLE表名DROP CONSTRAINT 约束名;

alter table information add constraint abd primary key(id); alter table information drop constraint abd;

17、 几个高级查询运算词

A: UNION 运算符

UNION 运算符通过组合其他两个结果表(例如 TABLE1 和 TABLE2)并消去表中任何重复行而派生出一个结果表。当 ALL 随 UNION 一起使用时(即 UNION ALL),不消除重复行。两种情况下,派生表的每一行不是来自 TABLE1 就是来自 TABLE2。

B: EXCEPT 运算符

EXCEPT运算符通过包括所有在 TABLE1 中但不在 TABLE2 中的行并消除所有重复行而派生出一个结果表。当 ALL 随 EXCEPT 一起使用时 (EXCEPT ALL),不消除重复行。

C: INTERSECT 运算符

INTERSECT运算符通过只包括 TABLE1 和 TABLE2 中都有的行并消除所有重复行而派生出一个结果表。当 ALL随 INTERSECT 一起使用时 (INTERSECT ALL),不消除重复行。

注:使用运算词的几个查询结果行必须是一致的。

18、 使用连接

A、left (outer) join:

左外连接(左连接):结果集几包括连接表的匹配行,也包括左连接表的所有行。

SQL: select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c

B:right (outer) join:

右外连接(右连接):结果集既包括连接表的匹配连接行,也包括右连接表的所有行。

C:full/cross (outer) join:

全外连接:不仅包括符号连接表的匹配行,还包括两个连接表中的所有记录。

D:inner join

19Group by:

一张表,一旦分组 完成后,查询后只能得到组相关的信息。

组相关的信息:(统计信息) count,sum,max,min,avg 分组的标准)

在SQLServer中分组时:不能以text,ntext,image类型的字段作为分组依据

在selecte统计函数中的字段,不能和普通的字段放在一起;

20、 对数据库进行操作:

分离数据库: sp_detach_db;附加数据库:sp_attach_db 后接表明,附加需要完整的路径名

21、 如何修改数据库的名称:

sp_renamedb 'old_name', 'new_name'

22、 查询结果排序

ASC从小到大、DESC从大到小

默认按照升序

可以按多个列进行排序,首先按前面的列排序,遇到相同记录再按照第二列排序。

23、 聚合函数

COUNT(*):统计表中元素的个数;

COUNT(DISTINCT 列名):统计本列中非空列值的个数;(DISTINCT表示不包括列重复值)

SUM:计算列值的和;

AVG:平均值

MAX:最大值

MIN:最小值

上述函数中除了COUNT(*)外,其他函数在计算过程中均忽略NULL值。

24WHERE条件查询

比较 =/>/</>=/<=

确定范围 between … and …/notbetween … and …

确定集合 IN/NOT IN

字符匹配 LIKE/NOT LIKE

空值 IS NULL/IS NOTNULL

多重条件 AND/OR

25LIKE匹配

_下划线:匹配任意一个字符

%百分号:匹配0个或多个字符;

[]:匹配[]中的任意一个字符。如[acgd]表示匹配a/c/g/d中的任何一个,对于连续的,可以写成[a-d];

[^]:不匹配[]中的任何一个字符。写成[^abgd]。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值