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语句相关推荐

  1. SQL Server 语句查询手册

    建表: CREATE TABLE  [DB.dbo].tableName (Stud_id int CONSTRAINT  constraintName1  not null primary key, ...

  2. 如何通过SQL Server语句查询三个月内的信息代码的教程方法

    如何通过SQL Server语句查询三个月内的信息代码的教程方法 作者:张国军_Suger 开发工具与关键技术:SQL Server 2014.SQL.SQL关键字         由于需求需要我们达 ...

  3. SQL server 语句运行很快,放到代码编译器中就很慢

    问题描述: SQL server 语句在navicate 中运行不到一秒,但是运行这个SQL语句的接口就需要十几秒,几十秒,严重影响用户使用. 解决思路: SQL语句是没有问题的,因为在navicat ...

  4. SQL Server语句创建表

    今天介绍一下如何使用SQL Server语句创建表并添加数据 首先先了解一下表的模式,在数据库中根据模式进行分组避免表名称的冲突 在SQL Server 2014中直接新建表是默认的前缀dbo 而命名 ...

  5. sql server 语句自动补齐

    sql2008 sql语句自动补齐功能 sql2008的命令自动补齐功能在哪设置 包括查询的表明自动补齐 不想用插件 这个好像2008自带的有这个功能 难道我装的版本不对 楼主说的是自动联想功能吧,任 ...

  6. SQL Server语句大全(增删改查数据、创建表、删除表、修改表)

    SQL server 增删改查语句 新增 insert into test.dbo.users (id,username,password) values(1,'lisi',123),(2,'lisi ...

  7. 经典SQL Server语句大全(超详细)

    一.基础 1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明:备份sql server --- ...

  8. sql server 语句查询、函数

    -- 使用 select语句进行查询<按查询的列名显示,有条件限制就只显示条件部分> 语法: select 列名 from 表名 [where 查询的条件表达式] [order by 列名 ...

  9. sql server语句去重

    sql server一般有两种去重方式 1.distinct  使用distinct 进行去重,与oracle 不同的是 sql server中会指定一个字段进行去重 有时候会因为数据与表格问题查询报 ...

最新文章

  1. CEPH核心理论 相关导图(持续更新)
  2. Maven 新版本 3.8.1 打包报错 maven-default-http-blocker (http://0.0.0.0/): Blocked mirror for repositories
  3. 专家观点:人工智能,还能再“聪明”些吗?
  4. MB_LEN_MAX常数,带C ++示例
  5. 基于Java封装Groovy工具类
  6. A query was run and no Result Maps were found for the Mapped Statement
  7. Excel中MATCH函数的正确使用
  8. matlab时域频域信号特征提取资料整合
  9. DlhSoft Kanban,WPF 的看板组件
  10. (附源码)ssm停车位共享系统app 毕业设计 041534
  11. [宅]最近3个月的宅生活
  12. 机器学习从入门到创业手记-初识sklearn
  13. 个人老师常用的在线授课软件对比分析
  14. TED演讲:404找不到页面的故事
  15. 厉害!23岁本科生发14篇SCI论文,并任外审专家……
  16. 计算机毕设之电影购票系统
  17. 指纹识别-(1)基本知识
  18. 优化elelment ui 的 dialog 样式
  19. cisco 华三 对接_H3C 交换机与Cisco交换机采用链路聚合对接的配置案例
  20. 深圳绿道最全资料合集_我是亲民_新浪博客

热门文章

  1. CentOS7安装Python3.4 ,让Python2和3共存
  2. VC程序中运行其他程序的三种方法
  3. 安卓应用用户数据_用户指标数据应用
  4. 无法连接oralce问题(不断更新)
  5. python中object是什么类型_Python 的 type 和 object 之间是怎么一种关系?
  6. 哈维玛德学院 计算机,这些美国大学名气不高,却有最顶级的工程专业
  7. stl min函数_std :: min()函数以及C ++ STL中的示例
  8. ruby array_Ruby中带有示例的Array.fill()方法(1)
  9. 操作系统中的处理机调度调度_操作系统中的多处理器调度
  10. 嵌套字典|python_Python | 如果不是,则使用嵌套,根据销售额计算折扣