SQL常用语法

作者: IT飞牛 | 来源:发表于2017-10-21 20:25 被阅读5次

记录执行时间:

SET STATISTICS TIME ON
SELECT * FROM SYSOBJECTS -->你的查询
SET STATISTICS TIME OFF

(1)sql语句执行顺序:https://docs.microsoft.com/en-us/previous-versions/sql/sql-server-2008/ms189499(v=sql.100)

1、FROM
2、ON
3、JOIN
4、WHERE
5、GROUP BY
6、WITH CUBE or WITH ROLLUP
7、HAVING
8、SELECT
9、DISTINCT
10、ORDER BY
11、TOP
(也就是说, 先进行on的过滤, 而后才进行join, 这样就避免了两个大表产生全部数据的笛卡尔积的庞大数据. )

(2)分组查询group by...having

对group by分组后的数据进行过滤在分组查询中,查询的列名必须出现在group by后或者在聚合函数中
--查询平均工资大于两千块钱的部门
select department_id,avg(wages)
from employee
where department_id is not null
group by department_id
having avg(wages)>2000

(3)print

declare @msg nvarchar(max)
set @msg='abcdef'
print @msg
消息框中打印出:abcdef

(4)case when then

写法一:
select id,username,role,
case role
when 1 then '普通用户'
when 2 then '发布员'
else '管理员'
end as '角色'
from data
写法二:
select id,username,role,
case
when role=1 then '普通用户'
when role=2 then '发布员'
else '管理员'
end as '角色'
from couser
赋值时的写法:
set @orderby=
case @orderid
when 1 then ' posted desc,truename asc'
when 2 then ' geted desc,truename asc'
when 3 then ' readed desc,truename asc'
else ' posted desc,truename asc'
end
where中使用case when:
select * from datatable where (case colid when 0 then 1 end) = 1

Paste_Image.png

(5)动态执行SQL语句

sp_executesql

字符串前面加大写N表示,N'string' 表示string是个Unicode字符串。
例如:exec sp_executesql @sql,N'@schoolid int,@isbiye int,@step int,@ji int,@jie int',@schoolid,@isbiye,@step,@ji,@jie

exec

exec (N'select * from table where name like ''%@keyword%''')
注:单引号的转义方式是替换成两个单引号''

(6)select返回某字段重组的字符串FOR XML PATH('')

select top 5 cast(id as nvarchar(255))+',' from datatable where schoolid=1 FOR XML PATH('')
返回:49,48,47,46,45
详细可查看这篇文章:http://www.cnblogs.com/doubleliang/archive/2011/07/06/2098775.html

(7)将结果集整体插入另一张表对应字段

前提是字段类型和数量都符合
语法:insert into A(field11,field22,field33) select field1,field2,field3 from B where id in(...)
这句实现将B提取出来的结果集,插入到表A对应字段

相关文章

  • sql1

    sql常用语句: 1、显示时间(在sql当中执行操作系统的命令): 2、在sql中调用linux系统文件语法: 3...

  • 数据库学习线路图

    SQL 语法教程 SQL 教程SQL 简介SQL 语法SQL Select选择SQL SELECT DISTINC...

  • <7>mysql入门教程学习笔记-常用语法

    常用的SQL语法: 数据查询:(select from、where-in、where-=、where- 大于小于、...

  • SQL 语法大全

    SQL 语法大全 标签(空格分隔): SQL DB2 SQL语法大全 SQL SELECT SQL SELECT ...

  • postgresql自定义函数语法

    最近在写postgres的函数,整理下常用语法备忘 定义内部变量 执行动态sql,并传入参数 执行动态sql,取出...

  • 关系数据库SQL之基本数据查询:子查询、分组查询、模糊查询

    前言 上一篇关系数据库常用SQL语句语法大全主要是关系型数据库大体结构,本文细说一下关系型数据库查询的SQL语法。...

  • sql常用语法

    SQL 中最重要的 DDL ( 数据定义语言)语句:CREATE DATABASE - 创建新数据库ALTER D...

  • SQL常用语法

    创建库: 创建表 修改表 简单查询1 简单查询2(通配符) 简单查询3 连接查询 外部连接查询: 嵌套查询1: 注...

  • SQL常用语法

    记录执行时间: SET STATISTICS TIME ONSELECT * FROM SYSOBJECTS -...

  • SQL常用语法

    1.连接数据库 2.查看数据库 3.使用数据库 4.查看表 5.查看表结构 6.建表 7.插入数据

网友评论

    本文标题:SQL常用语法

    本文链接:https://www.haomeiwen.com/subject/tuiiuxtx.html