T-Sql常用语句
1.用bcp导出txt数据
DECLARE
@bcp VARCHAR(100),
@date VARCHAR(10) BEGIN
SET @date = REPLACE(CONVERT(VARCHAR, GETDATE() - 2, 111), '/', '-'); SET @bcp = 'bcp WebStat.dbo.[PV_HIS_' + @date + '] out \pvtxt\PV_HIS_' + @date + '.txt -c -T'; --PRINT @bcp;
-- 执行bcp命令
EXEC xp_cmdshell @bcp; END;
2.动态执行sql
declare @sql varchar(4000) set @sql='select name' select @sql=@sql+',isnull(sum(case subject when '''+subject+''' then result end),0)['+subject+']' from (select distinct subject from CJ) as a select @sql=@sql+' from CJ group by Name' print @sql -- 打印 declare @test varchar(300) set @test = 'select getdate()' print @test exec(@test) --执行sql语句
3. 系统sql语句
--0.查询数据库中所有对象 select * from yourdb.sys.all_objects --查询数据库中所有的表 select * from yourdb.sys.tables select * from yourdb.sys.databases
--1 查询所有的数据库名称
select Name FROM Master.dbo.SysDatabases order BY Name
--2 获取所有表名
--XType='U':表示所有用户表;
--XType='S':表示所有系统表;
select name from sysobjects where xtype='U' order by name
--注意:一般情况只需要type = 'U',但有时候会有系统表混在其中
--不知道什么原因,加上后面一句后就能删除这些系统表了
SELECT name FROM sysobjects WHERE type = 'U' AND sysstat = '83'
select * from sysobjects where [type]='u' and xtype='u';
select * from systypes where xusertype=56
--3 获取所有字段名:
select name from syscolumns where id=OBJECT_ID('city') –表或视图名
SELECT syscolumns.name,systypes.name,syscolumns.isnullable,syscolumns.length
FROM syscolumns, systypes
WHERE syscolumns.xusertype = systypes.xusertype
AND syscolumns.id = object_id('tableName')
4.常用DDL语句
--创建数据库
Create database Users --创建表,添加主、外键 Create table T_Students( Id int IDENTITY(1,1) NOT NUL, StudentNo char(4), CourseNo char(4), Score int, Primary key(Id), Foreign key(CourseNo) References T_Course(CourseNo) ); --修改表结构,添加字段
Alter table T_Person add NickName nvarchar(50) null; --修改表结构,删除字段
Alter table T_Person Drop column NickName; --删除数据表
Drop table T_Person; --创建索引
Create [Unique] Index <索引名> on <基本表名>(<列明序列>);
1、group by 功能:分组统计 2、having子句,功能:指定组合或者聚合的搜索条件,通常与group by子句一起使用,完成分组查询后在进行筛选 3、联合查询 union: 功能:将两个以上的查询结果集组合成一个单个的结果集,该集中包括所有集中的全部行数据 4、连接查询,功能:将多个表中的数据查询出来放在一起 1)内连接:使用 = < > 等进行表间某些数据库的比较操作,并列出这些表中与连接条件相匹配的数据行 如:select * from TableA inner join TableB where A.aid = B.aid 2)自然连接:指明要查询的列,并排序 3)外连接:与内连接不同的是,内连接至少要有一个同属于两个表的行符合连接条件时才会返回行, 外连接会返回符合任意条件的行,它的表有主从之分,用主表中的每行去匹配从表中的行, 与内连接不同的是,外连接不会丢弃没有匹配的行,而是填充null给结果集。 5、创建一个表的SQL语句 create table tempTable( id int priamry key identity(1,1) not null, fieldA nvarchar(20), FK_ID int references OtherTable(id) ) 6、子查询:一个sql语句中嵌套另一个sql语句就叫嵌套查询,而被嵌入的这个语句就叫做子查询。 子查询也称内部查询,而包含子查询的select语句被称为外部查询,子查询自身可以包含一个或多个子查询,也可以嵌套任意数量的子查询。 7、创建视图:视图就是一个虚表 create View view.tempView select app.AppManageID,app.CompanyName, app.Passport, app.WebURL, app.ShopType,app.CreateTime from AppManage as app inner join PackageInfo as p on app.AppManageID=p.AppManageID
4.表复制
方法1:语句形式为:SELECT vale1, value2 into Table2 from Table1
Table2可以不存在。
方法2:语句形式为:Insert into Table2(field1,field2,...) select value1,value2,... from Table1
Table2必须存在。
update 2014-10-10 21:13:25
可以直接用语句查 select char(9) ,char(10), char(13)
查出来全是空白~
那就查ASCII表吧~
char(9) 水平制表符
char(10)换行键
char(13)回车键
char(9) :tab
char(10) :换行
char(13):回车
一般char(10)char(13)连着用,表示0x0A0x0D,即一个完整的回车换行。
--1.
--前期准备
DUMP TRANSACTION webstat WITH NO_LOG
bACKUP LOG webstat WITH TRUNCATE_ONLY --2.
webstat :文件名称
——收缩数据库
DBCC SHRINKFILE(N'webstat',916000) --3.
——查看收缩进度
use master
go
select * from sysprocesses
--cmd='DbccFilesCompact' (查session_id ) SELECT session_id,percent_complete
FROM sys.dm_exec_requests t WHERE session_id=59
go DUMP TRANSACTION webstat WITH NO_LOG
bACKUP LOG webstat WITH TRUNCATE_ONLY DBCC SHRINKFILE(N'web',916000) use master
go SELECT session_id,percent_complete
FROM sys.dm_exec_requests t WHERE session_id=53 select * from sysprocesses
CREATE procedure [dbo].[pr_state]
as
begin
DECLARE @SQLString NVARCHAR(500)
DECLARE @datetime NVARCHAR(20)
set @datetime =CONVERT(varchar(10), getdate()-1 ,120);
SET @SQLString =N'
insert into PV_HIS_JifenWall_Report(recorddate,type,count,usercount)
select '''+@datetime+''' , PageQueryString,count(1) cnt,count(distinct UserAccount) cntuseraccount
from [dbo].[PV_HIS_'+ @datetime+ '] a with(nolock) where PageQueryString in
(''CPAList'',''CPADownload'',''CPAInstall'',''CPAOpen'')
group by PageQueryString'
--print @SQLString
EXEC sp_executesql @SQLString
end
T-Sql常用语句的更多相关文章
- 【数据库】 SQL 常用语句
[数据库] SQL 常用语句 1.批量导入 INSERT INTO Table2(field1,field2,...) SELECT value1,value2,... FROMTable1 要求目标 ...
- 【数据库】 SQL 常用语句之系统语法
[数据库] SQL 常用语句之系统语法 1. 获取取数据库服务器上所有数据库的名字 SELECT name FROM master.dbo.sysdatabases 2. 获取取数据库服务器上所有非系 ...
- SQL常用语句之数据库的创建、删除以及属性的修改-篇幅1
本篇文章主要总结了SQL Server 语句的使用和一些基础知识,因为目前我也正在学习,所以总结一下. 要使用数据库语句,首先就要知道数据库对象的结构: 通常情况下,如果不会引起混淆,可以直接使用对象 ...
- SQL常用语句,随时用随时更新
更多详细说明文档查询 http://www.postgres.cn/docs/9.5/infoschema-columns.html 1.1通过表名查询表的属性 SELECT * FROM sys.s ...
- SQL常用语句(二)
--语 句 功 能--数据操作SELECT --从数据库表中检索数据行和列INSERT --向数据库表添加新数据行DELETE --从数据库表中删除数据行UPDATE --更新数据库表中的数据 --数 ...
- ORACLE数据库 常用命令和Sql常用语句
ORACLE 账号相关 如何获取表及权限 1.COPY表空间backup scottexp登录管理员账号system2.创建用户 create user han identified(认证) by m ...
- SQL常用语句整理
有次笔试最后一页的三个数据库连接查询,没有写出来,被考官暗讽了下.现在想来,实习初,确实很LOW.现公司刚入职的时候,负责过ETL方面,所以和数据库打了不少交道,五十行的联合查询.上百行的存储过程很常 ...
- mysql sql常用语句大全
SQL执行一次INSERT INTO查询,插入多行记录 insert into test.person(number,name,birthday) values(5,'cxx5',now()),(6, ...
- sql常用语句--转载
一.基础 .说明:创建数据库 CREATE DATABASE database-name .说明:删除数据库 drop database dbname .说明:备份sql server --- 创建 ...
- sql常用语句汇总
--创建数据库 USE yuju CREATE database YuJu on primary ( name='YuJu', filename='B:\ceshi数据库\YuJu.mdf', max ...
随机推荐
- go语言之进阶篇创建goroutine协程
1.goroutine是什么 goroutine是Go并行设计的核心.goroutine说到底其实就是协程,但是它比线程更小,十几个goroutine可能体现在底层就是五六个线程,Go语言内部帮你实现 ...
- Cesium中导入三维模型方法(dae到glft/bgltf) 【转】
http://blog.csdn.net/l491453302/article/details/46766909 目录(?)[+] Cesium中目前支持gltf和bgltf两种格式.“gltf是kh ...
- VS2010 SP1安装失败之”此计算机的状态不支持此安装“()
升级安装VS2010SP1的时候,出现“此计算机的状态不支持此安装”,Google得之: 如下图显示: 安装程序已经检测到,此计算机不满足安装此软件所需的条件.必须先解决以下这些造成阻止的问题,才可以 ...
- [leetcode]ZigZag Conversion @ Python
原题地址:https://oj.leetcode.com/problems/zigzag-conversion/ 题意: The string "PAYPALISHIRING" i ...
- Java系列:使用软引用构建敏感数据的缓存
一.为什么需要使用软引用 首先,我们看一个雇员信息查询系统的实例.我们将使用一个Java语言实现的雇员信息查询系统查询存储在磁盘文件或者数据库中的雇员人事档案信息.作为一个用户,我们完全有可能需 ...
- centos7 开机自动连网
新安装好的CentOS7桌面版,默认的网络都是关闭的,在图形页面中,开启后,重启后网络又关闭了.下面配置开机自动连网. 工具/原料 CentOS7.2 方法/步骤 首先打开终端,用ifco ...
- UEditor常用设置函数记录
在线文档对UEditor说明不够全面,收集了一些常用的方法和基本设置,以供参考. 1.创建编辑器 UE.getEditor('editor', { initialFrameWidth:"10 ...
- Android -- Annotation
Override Annotation @Override public void onCreate(Bundle savedInstanceState){}; 概念 An annotation is ...
- Android -- queryIntentActivities
某些时候你想要知道某个APP是否有注册了一个明确的intent,比如说你想要检查某个receiver是否存在,然后根据是否存在来这个receiver来在你的AP里面enable某些功能.我们可以通过P ...
- java注解Annotation的使用实例
1.注解的定义 import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java. ...