【2017-03-10】T-sql基础语句及条件,高级查询
一、T-sql基础语句
1、创建数据库:create database 数据库名 (不能中文,不能数字开头,不能符号开头)
2、删除数据库:drop database 数据库名
3、选择数据库:use 数据库名
4、创建表:create table 表名
(
列名 数据类型,
列名 数据类型,
列名 数据类型
设置主键列:primary key
设置唯一列:unique
设置非空:not null
设置自增列:identity(1,1) -从1开始计数,每次自增1
)
5、删除表:drop table 表名
6、添加列:alter table 表名 add 列名 数据类型
7、删除列:alter table 表名 drop column 列名
8、添加数据:insert into 表名 values('字符串','2017-1-1','true/false',数字)
9、修改某一列数据:update 表名 set 列名=值 (整列修改,修改后的数据都相同)
10、删除数据:delete from 表名(逐行删除,日志保存记录,自增列序号不会删,会依次叠加) / truncate from 表名(清空所有表的内容,日志不会记录,自增列序号记录也会删除,慎用!)
11、查询数据:select *from 表名(查询该表所有数据)
12、设置外键约束:
alter table 外键表名 add constraint 约束名称 foreign key(外键字段) references 主键表名(约束列名)
例子:如表A中的Ids是主键,要约束表B中的Aid列,那么语句应该是:
alter table B add constraint A_B_Ids foreign key(Aid) references A(Ids)
tips:
1.--注释内容 注释一行
2./*注释内容*/ 注释一段
二、数据库数据条件,高级查询
1、条件修改
update 表名 set 列名 =值 where 列名=值
例:update car set time ='2017-1-10' where oil =7.4 and powers =188
2、条件删除
delete from 表名 where 列名=值
例:delete from car where code='c013' or brand ='b001'
3、条件查询
1.查询某一行:select *from 表名 where 列名= <= >= < > 值 多个条件用and/or
2.查询某一列:select 列名 from 表名
查看多列用逗号隔开 例:select code,name from car
4、模糊查询
select *from 表名 where 列名 like '%值%' %表示通配符 '%值%' ——包含这个值 ,'值%'——以这个值开头,'%值'——以这个值结尾
5、排序查询
select * from 表名 order by 列名(该列为数值类型) asc升序/desc降序
order by须放置在条件语句后,不加and,表示条件查询后再排序
6、去重查询
select distinct 列名 from 表名
查询到的内容为该列去掉重复部分之后的值
7、分组查询
select 列名 from 表名 group by 列名
效果和去重查询一样,但是分组查询还可以进行其他操作,现在还没由学到,前后两个列名一致
8、子查询
一般用在外键约束的的两个表中,将主键表的值当做查询语句在外键表中使用。
brand_code 这一列的值和car表中的brand列的值是对应的,可以通过这一点将两个表联系起来。