
技术专栏
文章平均质量分 67
Yole
为企业打造信息化平台。
展开
-
SQL 数据分组累加sum() over (partition by ... order by ...)
drop table testaa--新建测试表testaacreate table testaa (id int ,[group] varchar(10) ,num int )select * from testaa--插入测试数据insert into testaa select 1,'A',100 union allselect 2,'A',200 union ...原创 2019-02-25 18:07:49 · 29223 阅读 · 0 评论 -
SQL Server基础语法实例应用(二)
二、实例应用1、说明:复制表2、说明:拷贝表3、说明:跨数据库之间表的拷贝(具体数据使用绝对路径)4、说明:子查询(表名1:a 表名2:b)5、说明:显示品名、数量和最后入库时间6、说明:between的用法,between限制查询数据范围时包括了边界值,not between不包括......原创 2014-03-18 16:56:08 · 1345 阅读 · 0 评论 -
SQL Server基础语法实例应用(一)
一、基础1、说明:创建数据库CREATE DATABASE database-name 2、说明:删除数据库DROP DATABASE database-name3、说明:备份数据库USE master-- 创建 备份数据的 deviceEXEC sp_addumpdevice 'disk', 'cc_jz', 'd:\cc_jz.dat'-- 开始 备份BACKUP DATABASE cc_jz TO cc_jz 4、说明:创建新表create table原创 2014-03-11 11:24:48 · 1672 阅读 · 1 评论 -
先进先出SQL Server 语句
--> 测试数据:[m]if object_id('[m]') is not null drop table [m]go Create table m ( ID int not NULL , mCount int not NULL ,mTime datetime not null) INSERT into m(ID,mCount,mTime) SELECT 1,50,'2014-02-0原创 2014-03-05 13:55:39 · 3219 阅读 · 0 评论 -
SQL Server 2005学习笔记⑦- 分页(按分组进行分页)
--> 测试数据:[a]if object_id('[a]') is not null drop table [a]go create table [a]([ID] int,[品名] varchar(6),[入库数量] int,[入库时间] datetime)insert [a]select 1,'矿泉水',100,'2013-01-02' union allselect 2,'方便面原创 2014-02-18 15:47:45 · 1092 阅读 · 0 评论 -
SQL Server 函数学习笔记⑥函数的高级应用=》按规则拆分列形成行数据
if OBJECT_ID('test') is not nulldrop table test go create table test ( id int, [name] varchar(10), [key] varchar(20) ) go insert test select 1,'lisa','lia,is,sa' union allselec原创 2014-02-17 10:00:56 · 1539 阅读 · 0 评论 -
SQL Server2005 拆分-去重-合并
--测试表if OBJECT_ID('test') is not nulldrop table test go create table test ( [key] varchar(20) ) go insert test select 'a,b' union allselect 'b,c'select * from test/*key--------原创 2014-02-27 15:03:36 · 1601 阅读 · 0 评论 -
SQL Server 函数学习笔记⑤ REVERSE()
REVERSE(str)select REVERSE('1234567890abc')/*-------------cba0987654321(1 行受影响)*/ 返回字符串str的字符颠倒顺序。原创 2014-02-10 15:35:30 · 1526 阅读 · 0 评论 -
SQL Server2005 表分区(第四章)
第四章1、对现有普通表表进行分区2、对现有分区表进行添加一个分区3、对现有分区表进行删除一个分区4、对现有分区表进行修改分区5、把现有分区表改回原普通表原创 2014-01-23 14:43:41 · 1725 阅读 · 0 评论 -
SQL Server2005 表分区(第二章)
第二章1、如何查看分区2、分区表与普通表对比原创 2014-01-22 15:55:32 · 1707 阅读 · 0 评论 -
SQL Server基础语法实例应用(三)
三、开发应用1.按姓氏笔画排序:2.数据库加密:3.取回表中字段:4.查看硬盘分区:5.比较A,B表是否相等:6.记录搜索:......原创 2014-03-26 09:49:37 · 1629 阅读 · 1 评论 -
按需求先进先出分配库存
--测试数据create table #库存(wareid varchar(13),makeno varchar(40),storeqty numeric(16,6))insert into #库存 select 'A','批号1',30insert into #库存 select 'A','批号2',40insert into #库存 select 'A','批号原创 2014-08-04 16:38:05 · 3214 阅读 · 0 评论 -
SQL Server数据库优化实战(一)
前言:一直想写一些关于SQL Server 数据库优化的文章,不过介于本人能力有限,一直不敢班门弄斧。如今,想把已经整理好的几章放在博客上和大家分享,与君共勉。分析问题:对于优化来说,准确的找到问题点才是重中之重。接下来的几章会重点介绍如何去准确的发现问题,并迅速的提出最有效的解决方案。获得问题关键点的方式方法会有很多,虽说自己动手丰衣足食,但最直接的就是听客户或者提出者的需求,并详细的询问需求。例如:某个查询慢,某个操作慢等;当然更高端的就是直接告诉您哪条语句慢(一般来说能确定到语原创 2015-05-15 15:09:59 · 1282 阅读 · 0 评论 -
SSIS项目基础实战操作手册_v1.0(傻瓜版)(三)
SSIS项目基础实战操作手册_v1.0(傻瓜版)(三)本章介绍用存储过程调用作业,作业执行调用SSIS包。三、 数据库新建作业调用SSIS包原创 2017-07-31 11:42:13 · 1674 阅读 · 1 评论 -
SSIS项目基础实战操作手册_v1.0(傻瓜版)(二)
SSIS项目基础实战操作手册_v1.0(傻瓜版)(二)本章介绍SSIS如何部署导SQL SERVER上。二、 包部署原创 2017-07-31 11:35:01 · 1490 阅读 · 0 评论 -
SSIS项目基础实战操作手册_v1.0(傻瓜版)(一)
SSIS项目基础实战操作手册_v1.0(傻瓜版)(一)本章简单介绍SSIS是如何开发的,通过实战来进行讲解,本章的实战目的是要通过SSIS来创建表a和表b,并且向表a写入数据;同时,要通过SSIS中数据流任务来复制表a的数据到表b中。本章只是简单的做了个例子,表a和表b属于同一个数据库,表结构也完全一致;当然,同学们可以举一反三,可以连接不同的服务器和不同的数据库,也可以是不同的表结构,然后通过临时表进行处理数据,最终得到期望的表b的数据。开发环境:MS SQL Server2012MS V原创 2017-07-31 11:24:46 · 6824 阅读 · 0 评论 -
SQL Server 学习笔记⑧- 触发器(修改前和修改后的语句插入指定表中)
SQL Server 学习笔记⑧- 触发器(修改前和修改后的语句插入指定表中)原创 2015-12-03 09:39:19 · 2077 阅读 · 0 评论 -
SQL Server 2008R2 hierarchyid的使用方法(父子节点、上下级处理)
SQL Server 2008R2 hierarchyid的使用方法(父子节点、上下级处理)SQL Server 2008 及以上版本,出了这样一个字段类型,用于处理父子节点、员工上下级等问题。使得此类问题变得更容易处理些。原创 2015-11-27 15:08:10 · 3013 阅读 · 0 评论 -
SQL Server 2008R2 数据库邮件
SQL Server 2008R2 数据库邮件看图说话,一步一步教您如何配置SQL Server 2008R2 数据库邮件。原创 2015-11-04 15:14:56 · 2605 阅读 · 0 评论 -
SQL Server实现split功能
--实现split功能 的函数 create function f_split(@SourceSql varchar(8000),@StrSeprate varchar(10)) returns @temp table(a varchar(100)) as begin declare @i int set @SourceSql=rtrim(ltrim(@SourceSql)) se原创 2013-12-18 09:45:00 · 2470 阅读 · 0 评论 -
SQL Server数据库优化实战(二)
前言:本章主要介绍一下SQL Server Profiler(事件探查器),通过探查器,来分析语句运行的效果。--SQL Server Profiler['prəʊfaɪlə(r)]事件探查器SQL Profiler是一个图形界面和一组系统存储过程,其作用如下:-图形化监视SQL Server查询;-在后台收集查询信息;-分析性能;-诊断像死锁之类的问题;-调试T-SQL语句;-模拟重放SQL Server活动;-也可以使用SQL Profiler捕捉在S原创 2015-05-15 15:59:23 · 1597 阅读 · 0 评论 -
SQL Server数据库优化实战(三)
前言:本章主要来介绍一下表的压缩。收缩日志文件--利用exec sp_spaceused语句查看数据库大小--右键数据库属性--查看选项--将恢复模式设置成简单--右键数据库-任务-收缩-文件--文件类型选择日志--查看收缩后数据库大小--右键数据原创 2015-05-20 15:10:39 · 2560 阅读 · 0 评论 -
SQL Server2005 表分区(第三章)
第三章1、分区表与普通表(加索引)对比2、分区表(加非聚集索引)与普通表(加索引)对比原创 2014-01-23 10:54:14 · 1052 阅读 · 0 评论 -
SQL Server2005 表分区(第一章)
第一章1、什么是分区2、为什么要把表进行分区3、怎么把表进行分区原创 2014-01-22 15:02:04 · 1628 阅读 · 0 评论 -
SQL Server 级联删除 ON DELETE CASCADE
--创建测试主表CREATE TABLE [dbo].[Test]( [TestID] int NOT NULL, --主表ID [TestData] [varchar](10) NOT NULL,--主表内容数据 CONSTRAINT [PK_Test_1] PRIMARY KEY CLUSTERED([TestID] ASC)--设置主键)GO--创建测试子表CR原创 2013-11-22 10:35:17 · 12475 阅读 · 0 评论 -
SQL Server 横转纵 行转列
CREATE TABLE #T_A( d_month int , CompanyName varchar(200) , profits INT) INSERT INTO #T_ASELECT 1,N'公司A',123UNIONSELECT 2,N'公司B',234UNIONSELECT 3,N'公司C',345UNIONSELECT 4,N'公司D',3原创 2013-11-07 10:36:55 · 2593 阅读 · 0 评论 -
SQL Server DATEPART() 函数
SQL Server DATEPART() 函数--语法:DATEPART(datepart,date)SELECT DATEPART(yy,getdate()) AS '年',DATEPART(qq,getdate()) AS '季度',DATEPART(mm,getdate()) AS '月',DATEPART(dy,getdate()) AS '年中的日',DATEPART原创 2013-11-07 09:04:00 · 2624 阅读 · 0 评论 -
SQL Server 2005 加密(安全性:非对称密钥、证书、对称密钥)
SQL Server2005,引入了列级加密。使得加密可以对特定列执行,这个过程涉及4对加密和解密的内置函数。EncryptByCert() 和 DecryptByCert() —利用证书对数据进行加密和解密EncryptByAsymKey() 和 DecryptByAsymKey()原创 2013-11-06 14:38:40 · 2461 阅读 · 2 评论 -
SQL Server xtype的介绍
select * from sysobjects where xtype='--?--'Id int 对象标识号。 xtype char(2) 对象类型。可以是下列对象类型中的一种: C = CHECK 约束 D = 默认值或 DEFAULT 约束 F = FOREIGN KEY 约束 L = 日志 FN = 标量函数 IF = 内嵌表函数 P = 存储过程原创 2013-11-06 09:53:32 · 850 阅读 · 0 评论 -
SQL Server 2005 sys.dm_exec_query_stats
SELECT creation_time N'语句编译时间' ,last_execution_time N'上次执行时间' ,total_physical_reads N'物理读取总次数' ,total_logical_reads/execution_count N'每次逻辑读次数' ,total_logical_reads N原创 2013-11-04 10:19:57 · 1133 阅读 · 0 评论 -
助记码的标量值函数(中文的拼音首字母)
set ANSI_NULLS ONset QUOTED_IDENTIFIER ONgoALTER function [dbo].[GetPY](@str varchar(500)) returns varchar(500) as begin declare @cyc int,@length int,@str1 varchar(100),@charcate varbina原创 2013-11-04 13:24:09 · 1511 阅读 · 0 评论 -
SQL 2005 sa 密码修改
在SQL Server2005下修改sa密码的一种方法如下:首先登录SQL Server Management Studio (windows用户或其他用户登录)打开查询分析器,输入以下代码,执行。ALTER LOGIN sa ENABLE GO ALTER LOGIN sa WITH PASSWORD = '123456' GO ‘123456’是新密码。原创 2013-05-17 10:45:50 · 988 阅读 · 0 评论 -
删除本节点及其子节点的所有数据
==>删除ID是1及其所有子节点的数据--实现split功能 的函数create function f_split(@SourceSql varchar(8000),@StrSeprate varchar(10))returns @temp table(a varchar(100))as begindeclare @i intset @SourceSql=rtrim原创 2013-04-25 08:19:44 · 1675 阅读 · 0 评论 -
SQL Server 2005 合并行数据
--测试数据create table tab( NumID int, SkuID varchar(max), Stock varchar(max))godeclare @i intset @i=1while @i<23begininsert into tab (NumID,SkuID,Stock) values ('23940',3982+@i,3+@i)原创 2013-11-08 09:32:52 · 1449 阅读 · 0 评论 -
SQL Server 2008 Merge into
--创建测试表 CREATE TABLE t_A (MCLASS VARCHAR(20),SNO VARCHAR(20)) INSERT INTO t_A SELECT 'L-1','123' UNION ALL SELECT 'L-2','234' UNION ALL SELECT 'L-3','345'CREATE TABLE t_B (MCLASS VA原创 2013-11-11 14:36:26 · 2602 阅读 · 0 评论 -
SQL case when then 及 isnull() 例子
--> 测试数据:[动态表]if object_id('[动态表]') is not null drop table [动态表]go create table [动态表](id int,[日期] varchar(15),[原料ID] varchar(20),[原料名称] varchar(20),[成本单价] decimal(20,2))insert [动态表]select 1,'2013原创 2013-11-28 13:38:36 · 5420 阅读 · 0 评论 -
SQL Server 2005 行号、合并、分组
--> 测试数据:[a]if object_id('[a]') is not null drop table [a]go create table [a]([djbh] varchar(10),[spid] varchar(10),[shl] int)insert [a]select 'bh001' ,'sp001' ,10 union allselect 'bh001' ,'sp0原创 2013-12-26 10:21:29 · 1020 阅读 · 0 评论 -
SQL Server 学习笔记④ 查询某个数据所在数据库表中的哪个字段上出现过的存储过程
--2008查找某数据库中的列是否存在某个值create proc spFind_Column_In_DB( @type int,--类型:1为文字类型、2为数值类型 @str nvarchar(100)--需要搜索的名字)as --创建临时表存放结果 create table #tbl(PK int identity primary key ,tbl sysname,col sy原创 2014-01-02 14:05:00 · 1398 阅读 · 0 评论 -
数据库设计(一、二、三及BCNF范式)
范式说明第一范式(1NF):数据库表中的字段都是单一属性的,不可再分。这个单一属性由基本类型构成,包括整型、实数、字符型、逻辑型、日期型等。例如,如下的数据库表是符合第一范式的:字段1 字段2 字段3 字段4而这样的数据库表是不符合第一范式的:字段1 字段2 字段3 字段4字段3.1 字段3.2很显然,在当前的任何关系数据库管原创 2013-12-19 09:40:00 · 1602 阅读 · 0 评论 -
SQL Server 函数学习笔记②PATINDEX()
语法:PATINDEX ( '%pattern%' , expression )参数:pattern 包含要查找的序列的字符表达式。 可以使用通配符;但pattern 之前和之后必须有 % 字符(搜索第一个或最后一个字符时除外)。 pattern 是字符串数据类型类别的表达式。 pattern 最多包含 8000 个字符。 expression 是一原创 2013-12-17 08:54:13 · 750 阅读 · 0 评论