SQL Server语句
SQL简介:
结构化查询语言,全拼 Structured Query Language
主要用于对数据库的操作,大多数据库遵循sql原则
SQL server使用的是sql的扩展集T-SQL 全拼 Transact-SQL
SQL组成:
SQL由四部分组成分别为DML DDL DQL DCL
DML:数据表操作语言,用于插入(insert),修改(update),查询(select)数据表的操作
DDL:数据库的定义语言,建立数据库,数据库对象和定义其列,大部分是CREATE开头
DQL:对于数据表尽心查询的
DCL:用于数据库权限,创建用户名的(目前没有接触到)
SQL语句:(重点)
插入语句:
//插入表的所有数据,对应关系和表中的数据一一对应(包含类型,列名)
Insert into 表名 values(列1,列2…列n)
//插入数据到指定的列,值要对应表名后面的列,不要和表中的顺序对应
Insert into 表名(列1,列2…列n) values(列1,列2…列n)
修改语句:
//修改所有列的数据–修改所有列的值,该列的值都改变
Update 表名 set 列1=值1,列2=值2…
//修改指定行查询语句
Update 表名 set 列1=值1 ,列2 =值2 where 列=值
注:where表示条件,后边接对于前面修改语句的条件,where后面的列一般为主键列,where后面的值表示要修改的值内容
删除语句://删除表Drop table 表名//删除整个表数据,不删除表Delete from 表名Truncate table 表名注:如果该列是自增列 ,delete删除整个表数据之后再次插入之后会继承上一次的序号,truncate不会继承序号,而是从头开始//删除指定行数据Delete from 表名 where 列=值查询语句://查询全部语句, ‘*’表示所有的列Select * from 表名//查询指定列的所有数据,在select后添加列名,表示指定列的数据Select 列1,列2,列3 from 表名//查询指定条件语句,判断符号在数据库查询中可用(> < = != >= <=)Select * from 表名 where 列1=值1//查询指定范围的数据,该句查询年龄大于40小于20的人的所有信息Select * from 表名 where 年龄>40 and 年龄<20注: and表示并且 or 表示或者//查询指定范围的数据,该句查询的是年龄在20到40之间的数据,包含20和40Select * from 表名 where 年龄 between 20 and 40// 查询姓名为‘张三’或‘李四’的人,Select * from 表名 where 姓名 in(‘张三’,’李四’)注:IN后面可以接很多值,相当于多个or 上面的可以写做:
select * from where 姓名=张三 or 姓名=李四
//查询空值
Select * from 表名 where 列名 is null
//查询指定的行数-返回最大行数,Top指定最大显示行数
Select top 2 * from 表名
分组查询:
//查询每个职业的人数 count()表示求该列的个数
select work,count() from 表名 group by work
//多列分组查询–查询每个职业不同性别的人的个数
Select work,sex,count() from 表名 group by work,sex
HAVING:表示条件语句,在where后面再进行条件筛选
//查询该数据库中每个职业人数大于10的数据
Select work,count() from 表名 group by work having count()>10
注:查询语句中,where,Group by, Having,聚合函数执行如下:
1,where从数据源中去掉不符合条件的搜索
2, Group by手机数据到各个组中
3,HAVING去掉不符合搜索条件的组数据
模糊查询:
//查询姓王的,名字后面带一个字的人名
Select * from 表名 where name like ‘王_’
//查询姓王的,名字后面可以带任意字符的
Select * from 表名 where name like ‘王%’
注: ‘_’表示一个字符,‘%’表示任意个字符,如果需要查询名字中在任意位置出现的关键字,写成’%任意字%’
查询排序:
//从小到大排列
Select * from 表名 order by 要排序的列名 [ASC]
//从大到小
select * from 表名 order by 要排序的列名 desc
聚合函数:
Sum()求和 avg()平均数 max()最大值 min()最小值 count()个数
多表查询:(注意需要两表关联,没有关系的两张表一般我们不进行查询)
内连接查询:
Select * from 表1 t,表2 s where s.id=t.id
还可以写作:
Select * from 表1 as t inner join 表2 as s on(t.id=s.id)
注:’表1 t’表示给表1取了一个别名为t,也就是说可以在我们这个查询语句中使用t替代表1的名字,这个中间省略了as ,原语句应该写作 表1 as t,表2同理
select t.Title,c.CategoryName,t.Author,t.PublishDate,t.UnitPrice from Books t,Categories c where t.categoryId=c.id;
外链接查询:
左外链接:
Select * from 表1 as t left outer join 表2 as s on s.id=t.id
右外链接:
Select * from 表1 as t right outer join 表2 as s on s.id=t.id
注:外链接分为左外和右外,左外是以左表为基准,如果左表中有多余数据,那么会在右表中补充null,如果左表中少了数据,那么会在右表中删掉没有显示在左表中的数据。有链接相反
SQL Server语句相关推荐
- SQL Server 语句查询手册
建表: CREATE TABLE [DB.dbo].tableName (Stud_id int CONSTRAINT constraintName1 not null primary key, ...
- 如何通过SQL Server语句查询三个月内的信息代码的教程方法
如何通过SQL Server语句查询三个月内的信息代码的教程方法 作者:张国军_Suger 开发工具与关键技术:SQL Server 2014.SQL.SQL关键字 由于需求需要我们达 ...
- SQL server 语句运行很快,放到代码编译器中就很慢
问题描述: SQL server 语句在navicate 中运行不到一秒,但是运行这个SQL语句的接口就需要十几秒,几十秒,严重影响用户使用. 解决思路: SQL语句是没有问题的,因为在navicat ...
- SQL Server语句创建表
今天介绍一下如何使用SQL Server语句创建表并添加数据 首先先了解一下表的模式,在数据库中根据模式进行分组避免表名称的冲突 在SQL Server 2014中直接新建表是默认的前缀dbo 而命名 ...
- sql server 语句自动补齐
sql2008 sql语句自动补齐功能 sql2008的命令自动补齐功能在哪设置 包括查询的表明自动补齐 不想用插件 这个好像2008自带的有这个功能 难道我装的版本不对 楼主说的是自动联想功能吧,任 ...
- SQL Server语句大全(增删改查数据、创建表、删除表、修改表)
SQL server 增删改查语句 新增 insert into test.dbo.users (id,username,password) values(1,'lisi',123),(2,'lisi ...
- 经典SQL Server语句大全(超详细)
一.基础 1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明:备份sql server --- ...
- sql server 语句查询、函数
-- 使用 select语句进行查询<按查询的列名显示,有条件限制就只显示条件部分> 语法: select 列名 from 表名 [where 查询的条件表达式] [order by 列名 ...
- sql server语句去重
sql server一般有两种去重方式 1.distinct 使用distinct 进行去重,与oracle 不同的是 sql server中会指定一个字段进行去重 有时候会因为数据与表格问题查询报 ...
最新文章
- CEPH核心理论 相关导图(持续更新)
- Maven 新版本 3.8.1 打包报错 maven-default-http-blocker (http://0.0.0.0/): Blocked mirror for repositories
- 专家观点:人工智能,还能再“聪明”些吗?
- MB_LEN_MAX常数,带C ++示例
- 基于Java封装Groovy工具类
- A query was run and no Result Maps were found for the Mapped Statement
- Excel中MATCH函数的正确使用
- matlab时域频域信号特征提取资料整合
- DlhSoft Kanban,WPF 的看板组件
- (附源码)ssm停车位共享系统app 毕业设计 041534
- [宅]最近3个月的宅生活
- 机器学习从入门到创业手记-初识sklearn
- 个人老师常用的在线授课软件对比分析
- TED演讲:404找不到页面的故事
- 厉害!23岁本科生发14篇SCI论文,并任外审专家……
- 计算机毕设之电影购票系统
- 指纹识别-(1)基本知识
- 优化elelment ui 的 dialog 样式
- cisco 华三 对接_H3C 交换机与Cisco交换机采用链路聚合对接的配置案例
- 深圳绿道最全资料合集_我是亲民_新浪博客
热门文章
- CentOS7安装Python3.4 ,让Python2和3共存
- VC程序中运行其他程序的三种方法
- 安卓应用用户数据_用户指标数据应用
- 无法连接oralce问题(不断更新)
- python中object是什么类型_Python 的 type 和 object 之间是怎么一种关系?
- 哈维玛德学院 计算机,这些美国大学名气不高,却有最顶级的工程专业
- stl min函数_std :: min()函数以及C ++ STL中的示例
- ruby array_Ruby中带有示例的Array.fill()方法(1)
- 操作系统中的处理机调度调度_操作系统中的多处理器调度
- 嵌套字典|python_Python | 如果不是,则使用嵌套,根据销售额计算折扣