1.xpath

--1、文档
select @data
--2、任意级别是否存在price节点
select @data.exist('//price')
--3、获取所有book节点
select @data.query('//book')
--4、获取所有包含lang属性的节点
select @data.query('//*[@lang]')
--5、获取第一个book节点
select @data.query('//book[1]')
--6、获取前两个book节点
select @data.query('//book[position()<=2]')
--7、获取最后一个book节点
select @data.query('//book[last()]')
--8、获取price>35的所有book节点
select @data.query('//book[price>35]')
--9、获取category="WEB"的所有book节点
select @data.query('//book[@category="WEB"]')
--10、获取title的lang="en"的所有book节点
select @data.query('//book/title[@lang="en"]')
--11、获取title的lang="en"且 price>35的所有book节点
select @data.query('//book[./title[@lang="en"] or price>35 ]')
--12、获取title的lang="en"且 price>35的第一book的(第一个)title
select @data.query('//book[./title[@lang="en"] and price>35 ]').value('(book/title)[1]','varchar(max)')
--13、等价于12
select @data.value('(//book[./title[@lang="en"] and price>35 ]/title)[1]','varchar(max)')
--14、获取title的lang="en"且 price>35的第一book的(第一个)title的lang属性
select @data.value('((//book[@category="WEB" and price>35 ]/title)[1]/@lang)[1]','varchar(max)')
--15、获取第一本书的title
select Tab.Col.value('(book/title)[1]','varchar(max)') as title
from @data.nodes('bookstore')as Tab(Col)
--16、获取每本书的第一个author
select Tab.Col.value('author[1]','varchar(max)') as title
from @data.nodes('//book')as Tab(Col)
--17、获取所有book的所有信息
select
T.C.value('title[1]','varchar(max)') as title,
T.C.value('year[1]','int') as year,
T.C.value('title[1]','varchar(max)')as title,
T.C.value('price[1]','float') as price,
T.C.value('author[1]','varchar(max)') as author1,
T.C.value('author[2]','varchar(max)') as author2,
T.C.value('author[3]','varchar(max)') as author3,
T.C.value('author[4]','varchar(max)') as author4
from @data.nodes('//book') as T(C)
--18、获取不是日语(lang!="jp")且价格大于35的书的所有信息
select
T.C.value('title[1]','varchar(max)') as title,
T.C.value('year[1]','int') as year,
T.C.value('title[1]','varchar(max)')as title,
T.C.value('price[1]','float') as price,
T.C.value('author[1]','varchar(max)') as author1,
T.C.value('author[2]','varchar(max)') as author2,
T.C.value('author[3]','varchar(max)') as author3,
T.C.value('author[4]','varchar(max)') as author4
from @data.nodes('//book[./title[@lang!="jp"] and price>35 ]') as T(C)
--19、获取后多少个
SELECT resultDataset.query('/root/rows/row[position()>=(last()-2)]') FROM auditResult

2.字段约束:

--获取约束信息
select * from information_schema.constraint_column_usage---可以获取指定数据库中的所有约束的信息以及约束与列的对应关系
go select * from information_schema.constraint_table_usage---查询结果中只包含表和约束的对应关系,并没有约束对应的列信息
go select * from information_schema.table_constraints---查询结果中只包含表和约束的对应关系,并没有约束对应的列信息
go select * from information_schema.key_column_usage---可以获取指定数据库中的所有键约束的列信息,包括主键约束中的主键列,唯一约束中的唯一键列和外键约束中的引用列
go select * from sys.key_constraints----获取约束信息 select * from sys.foreign_keys--获取表中的外键约束 select * from sys.foreign_key_columns--获取外键约束的列信息 select * from information_schema.referential_constraints--获取外键约束信息 select * from information_schema.check_constraints--获取检查约束信息

 

3.时间查询:

获取本周一日期
SELECT @temppath= REPLACE(CONVERT(VARCHAR, DATEADD(WK,DATEDIFF(wk,0,getdate()),0),23),'-','') 获取上周一日期
SELECT @lastWeekMonday= REPLACE(CONVERT(VARCHAR, DATEADD(day,-(DATEPART(weekday,GETDATE())+5),GETDATE()),23),'-','')

4.字符截取:

--获取该字符从后往前第一次出现的位置
SELECT CHARINDEX(':',reverse('qweassa:aas:sqwe'))
--截取该字符最后一次出现的位置到最后
SELECT right('qweassa:aas:sqwe',CHARINDEX(':',reverse('qweassa:aas:sqwe'))-1)

5.数据文件查询及还原:

-------获取备份文件的原始数据路径和,原始日志路径
restore filelistonly from disk = 'D:\kk\test\411300_cw.bak'
-------获取备份文件的原始数据库名,数据库版本
restore headeronly from disk='D:\kk\test\411300_cw.bak' -------还原
RESTORE DATABASE AbpFirst FROM DISK='D:\kk\411300_cw.bak'
WITH
MOVE '411300_cw' TO 'D:\kk\ku\411300_cw.mdf',
MOVE '411300_cw_log' TO 'D:\kk\ku\411300_cw_log.ldf'

6.压缩备份

-----------------------压缩备份命令
with STATS = 1,compression
-----------------------
DECLARE @date VARCHAR(200)
DECLARE @fileName VARCHAR(200)
SELECT @date = REPLACE(REPLACE(CONVERT(VARCHAR(200),GETDATE(),20),' ','-'),':','-')
SET @fileName = 'G:\DatabaseBackup\CC_DATABAE_'+@date+'.bak'
BACKUP DATABASE [CC_DATABAE] TO DISK = @fileName with STATS = 1,compression

SqlServer:SqlServer(xpath,字段约束,时间查询,数据文件查询及还原,压缩备份)的更多相关文章

  1. PostgreSQL查询数据(连接查询和子查询)

    原料 --用户表 create table "SysUser"( "UserId" serial, --用户Id,自增 "UserName" ...

  2. PostgreSQL查询数据(基本查询)

    原料:数据表 create table "SysUser"( "UserId" serial, --用户Id,自增 "UserName" ) ...

  3. Linq:从List列表中查询数据(Where查询)

    获取List<Customer> customerList的函数见:http://www.cnblogs.com/yf2011/p/3369927.html 输出List中Berlin城市 ...

  4. Elasticsearch教程(九) elasticsearch 查询数据 | 分页查询

    Elasticsearch  的查询很灵活,并且有Filter,有分组功能,还有ScriptFilter等等,所以很强大.下面上代码: 一个简单的查询,返回一个List<对象> ..    ...

  5. [Oracle]如果误删了某个数据文件,又没有被备份,能否恢复?

    如果你有从这个数据文件创建之前,直到现在的,所有的ArchiveLog 和 Online REDO,是有可能进行恢复的. 执行: RMAN> restore datafile <filei ...

  6. SQLSERVER操作字段约束,修改字段名称等

    -- 表加注释EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'注释内容' , @level0type=N'SCHEM ...

  7. oracle系列笔记(1)---查询数据

    查询数据 1. 查询(select .. form ..)    (1)普通查询 select * from employees --代表查询employees表中所有数据 select last_n ...

  8. Thinkjs关系数据库学习——查询数据

    模型提供了多种方法来查询数据: find 查询单条数据 select 查询多条数据 count 查询总条数 countSelect 分页查询数据 max 查询字段的最大值 avg 查询字段的平均值 m ...

  9. MySql——创建数据表,查询数据,排序查询数据

    参考资料:<Mysql必知必会> 创建数据表 在学习前首先创建数据表和插入数据.如何安装mysql可以看看上个博客https://www.cnblogs.com/lbhym/p/11675 ...

随机推荐

  1. 关于 python 一切皆对象的实际理解

    1 关于type type 函数可以查看一个对象的类 type 类是一切类型的模版 In [2]: type(1) Out[2]: int In [3]: type(int) Out[3]: type ...

  2. python3安装模块,摘自网上

    配置好Python3.6和pip3安装EPEL和IUS软件源 yum install epel-release -y yum install https://centos7.iuscommunity. ...

  3. laravel 视图流程控制,if switch for loop

    流程控制 除了模板继承和数据显示之外,Blade 还为常用的 PHP 流程控制提供了便利操作,例如条件语句和循环,这些快捷操作提供了一个干净.简单的方式来处理 PHP 的流程控制,同时保持和 PHP ...

  4. Python字符串运算符

    下表实例变量 a 值为字符串 "Hello",b 变量值为 "Python": 操作符 描述 实例 + 字符串连接 >>>a + b 'Hel ...

  5. 用electrion打包angular成桌面应用

    用electrion官网的不行. 还好,可以直接照搬 https://github.com/maximegris/angular-electron 安装必要的库 npm i --save-dev el ...

  6. luoguP1160 队列安排 x

    P1160 队列安排 982通过 2.3K提交 题目提供者 该用户不存在 标签 云端 难度 普及/提高- 时空限制 1s / 128MB 题目描述 一个学校里老师要将班上N个同学排成一列,同学被编号为 ...

  7. .py文件打包成.exe文件

    # 使用pyinstaller模块 # pip install pyinstaller # 在命令行执行 pyinstaller -F xxx.py

  8. 【一起学源码-微服务】Nexflix Eureka 源码二:EurekaServer启动之配置文件加载以及面向接口的配置项读取

    前言 上篇文章已经介绍了 为何要读netflix eureka源码了,这里就不再概述,下面开始正式源码解读的内容. 如若转载 请标明来源:一枝花算不算浪漫 代码总览 还记得上文中,我们通过web.xm ...

  9. IT公司技术博客地址

    IT公司技术博客 美团点评技术团队今日头条技术博客Tencent ISUX DesignTGideas-腾讯互动娱乐创意设计团队>AlloyTeam | 腾讯全端 AlloyTeam 团队 Bl ...

  10. 2016 CCPC 长春站现场赛总结(流水账= =)

    总的来说在写这篇总结的时候心情还是愉悦的,因为第一次参加区域赛就越过铜直接拿了个银~开心之情无法用语言形容啊233= =... 从杭州坐火车到长春,去的时候24个小时,回来32个小时,在路上就花了2天 ...