T-SQL 查询语句

 

目录

SQL简述

SQL和T-SQL

1.非过程化语言

 2.统一的语言

 3.所有关系数据库的公共语言

T-SQL的组成

使用T-SQL 语句操作数据表

插入数据

 查询举例


SQL简述

在进行数据管理时,使用 SSMS进行数据维护有可视化、方便的优点,但是在批量维护或重复维护数据时,每次都需要使用 SSMS 不但不方便,而且容易出错。通过编写SQL语句来维护数据库便于解决重复或批量维护数据的难题。
数据库目前标准的指令集就是SOL。

SQL和T-SQL

SQL是 Structured Query Language的缩写,即结构化查询语言。它是1974年由Boyce和Chamberlin提出来的,1975~1979年, BM公司研制的关系数据库管理系统原型System R实现了这种语言,经过多年的发展,SQL语言得到了广泛的应用。如今Oracle, Sybase、Informix、SOL Server这些大型的数据库管理系统都支持SQL作为查询语言。SQL已经成为关系数据库的标准语言。
SQL广泛地被采用说明了它的优势。它使全部用户,包括应用程序员、数据库管理员和终端用户受益非浅

1.非过程化语言

 SQL 是一个非过程化的语言,因为它一次处理一个记录,对数据提供自动导航功能。SQL 允许用户在高层的数据结构上工作,而不对单个记录进行操作.可操作记录集。所有SQL语句可以接受集合作为输入,返回集合作为输出。SQL的集合特性允许一条SQL语句的输出作为另一条 SOL语句的输入。SQL 不要求用户指定数据的存放方法,这种特性使用户更易集中精力于要得到的结果.所有SQL 语句使用查询优化器,它是关系数据库管理系统(Relational Database Management System,RDBMS〉的一部分,查询优化器知道存在什么索引,在哪儿使用合活,而用户从不需要知道表是否有索引.表有什么类型的索引。

 2.统一的语言

 SQL可用于所有用户的数据库活动模型,包括系统管理员、数据库管理员.应用程序员、决策支持系统人员及许多其他类型的终端用户。基本的SQL命令只需要很少时间就能学会,最高级的命
令在几天内便可掌握。SQL为许多任务提供了命令,包括:

  • 查询数据。
  • 在表中插入、修改和删除记录。
  • 建立、修改和删除数据对象。
  • 控制对数据和数据对象的存取。
  • 保证数据库一致性和完整性。

以前的数据库管理系统为上述各类操作提供单独的语言,而SQL将全部任务统一在一种语言中。

 3.所有关系数据库的公共语言

 由于所有主要的关系数据库管理系统都支持SOL语言田白可薯佳田 SOI的技能从一个 RDBMS转到另一个。所有用SOL 编写的程序都是可以移植的。
SOL语言不同于Java、C#这样的程序设计语言,它只是数坭店能够门的指合,但是在程序中,可以组织SOL语句发送给数据库,数据库再执行相应的操作,例如在C廿程序中要得到 SQL Server数据库表中的记录,可以在C#程序中编写SQL查询语句,然后发关到数据在数据库根据查询的SOL语句进行查询,再把查询的结果返回C#程序。
T-SOL是标准SQL的加强版,除了标准的SQL命令之外还对 SOL合今做了许多扩充,提供类似于程序语言的基本功能,如变量说明、流程控制、功能函数等。

T-SQL的组成

 T-SQL 语言主要由以下几部分组成。

  • 数据操纵语言:用来查询、插入、删除和修改数据库中的数据,如 SELECT、INSERT、 UPDATE、DELETE。
  • 数据定义语言:用来建立数据库、数据库对象和定义其列,大部分是以CREATE 开头的命令,如 CREATE 、ALTER、DROP。
  • 数据控制语言(Data Control Language,DCL):用来控制数据库组件的存取许可、存取权限等,如 GRANT、REVOKE。

使用T-SQL 语句操作数据表

在SOL Server Management 中对表数据进行插入、更新或删除比较简单,除此之外,也可以使用T-SOL语句实现对表数据的插入、更新或删除等操作。

插入数据

 使用 INSERT 语句将数据插入表中。

INSERT 语法格式如下。

INSERT [INTO] <表名> [列名] VALUES <值列表>

 其中

  • [INTO]是可选的,可以省略。
  • 表名是必需的,而表的列名是可选的,如果省略,<值列表>中顺序与数据表中字段顺序保持一致。
  • 多个列名和多个值列表用逗号分隔。

 在插入数据的时候,需要注意以下事项。

  • 每次插入一整行数据,不可能只插入半行或几列数据。
  • 数据值的数目必须与列数相同,每个数据值的数据类型、精度和小数位数也必须与相应的列匹配。
  • INSERT 语句不能为标识列指定值,因为它的值是自动增长的。
  • 对于字符类型的列,当插入数据的时候,需要使用单引号。
  • 如果在设计表的时候指定某列不允许为空,则该列必须插入数据.否则将报告错误信息。
  • 插入的数据项要求符合 CHECK 约束的要求。
  • 尽管可以不指定瓦名但是应养成好习惯,明确指定插入的列和对应的值。

 

 

 

 查询举例

1.查看员工信息表
select * from [dbo].[员工信息表]
2.只查看员工信息表姓名和职位列
select 姓名,职位 from [dbo].[员工信息表]
3.查看员工信息表职位是工程师的姓名列
select 姓名 from [dbo].[员工信息表] where 职位='工程师'
4.筛选员工信息表工资8000到10000之间
select * from [dbo].[员工信息表] where 工资 between 8000 and 10000
5.查看工资是13447和12500
select * from [dbo].[员工信息表] where 工资 in (13447,12500)
6.查看工资是以1开头的
select * from [dbo].[员工信息表] where 工资 like '1%'
7.查看姓名是金开头的职位是工程师的
select * from [dbo].[员工信息表] where 姓名 like '金%' and 职位='工程师' 
8.查看备注不为空的
select * from [dbo].[student-1] where 备注 is not null
9.查看student-1表5行的内容
select top 5 * from [dbo].[student-1]
10.使用as将查出来的姓名改成name,类似别名
select 姓名 as name from [dbo].[student-1]
11.这里使用了去重,将职位中重复内容过滤
select distinct 职位 from [dbo].[员工信息表]

 

 

 

 

 

 

 

 

 

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值