随笔分类 -  sql

摘要:-------------------------(情景描述)在我们处理数据时,可能会碰到这种情景:Id Name1 a,b2 a1 a,b,c对于上面的表数据要求合并同类项Name,得到结果:1 a,b,c2 a-------------------------(解决方案)我们通过sql for xml path来合并Name,并写一个标量函数来去掉重复项:1) 创建标量函数:CREATE FUNCTION F_getStr(@oriStr nvarchar(30))returns nvarchar(30)asbegin declare @str nvarchar(30),@t... 阅读全文
posted @ 2014-04-10 12:50 aiaito 阅读(1325) 评论(0) 推荐(0)
摘要:--创建数据库USE yujuCREATE database YuJuon primary( name='YuJu', filename='B:\ceshi数据库\YuJu.mdf', maxsize=1024mb, filegrowth=10%)log on( name='YuJu_log', filename='B:\ceshi数据库\YuJu.ldf', size=10mb, maxsize=1024mb, filegrowth=10mb)--DROP database YuJu--CREATE table Teacher( 阅读全文
posted @ 2013-12-10 15:10 aiaito 阅读(358) 评论(0) 推荐(0)
摘要:USE [PM]GO/****** 对象: StoredProcedure [dbo].[LfangSatstics] 脚本日期: 08/24/2013 10:57:48 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGO-- =============================================-- Author:-- Create date: -- Description:-- =============================================ALTER PROCEDURE [dbo].[Lf 阅读全文
posted @ 2013-08-24 11:07 aiaito 阅读(321) 评论(0) 推荐(0)
摘要:--第一步:根据系统编号、列、单价分组求和select CLBH,DJ,sum(SL) as SL,sum(JE) as JE,Lie into #TempSZCMXfrom #ShouZhiCunMingXi group by Lie, CLBH , DJ order by Lie,CLBH--第二步:列转行,分组求和insert into #TempLastResultsSELECT YJ,EJ, MoJi=(CASE WHEN grouping(YJ) = 1 THEN '0' WHEN grouping(EJ) = 1 THEN [YJ] when grouping(M 阅读全文
posted @ 2013-08-24 11:06 aiaito 阅读(587) 评论(0) 推荐(0)
摘要:一级(2位),二级以后占用(3位),比如一级:01或02,二级:01001或01003,那三级编号就是01001001或01111112,我就写了一个存储过程【个人测试没问题,可以参考一下】获取即将要添加的编号(模拟场景:选择权限的树状图节点添加子集节点,需要计算出子集节点的将要插入的id)ALTER PROCEDURE [dbo].[GetMaxId]( @tablename nvarchar(100),--表名 @idcol nvarchar(100),--列名 @parent nvarchar(100),--父级编号 @jb int,--级别 @ids nvarchar(50) outp 阅读全文
posted @ 2013-08-09 11:52 aiaito 阅读(253) 评论(0) 推荐(0)
摘要:EG: where Convert(varchar(100),[字段名],120) like '2010-10-10%' 阅读全文
posted @ 2013-08-08 14:08 aiaito 阅读(195) 评论(0) 推荐(0)
摘要:第一范式:确保每列的原子性. 如果每列(或者每个属性)都是不可再分的最小数据单元(也称为最小的原子单元),则满足第一范式.例如:顾客表(姓名、编号、地址、……)其中"地址"列还可以细分为国家、省、市、区等。第二范式:在第一范式的基础上更进一层,目标是确保表中的每列都和主键相关. 如果一个关系满足第一范式,并且除了主键以外的其它列,都依赖于该主键,则满足第二范式. 例如:订单表(订单编号、产品编号、定购日期、价格、……),"订单编号"为主键,"产品编号"和主键列没有直接的关系,即"产品编号"列不依赖于主键列,应删除该 阅读全文
posted @ 2013-07-30 16:01 aiaito 阅读(229) 评论(0) 推荐(0)
摘要:笔者总结供参考 阅读全文
posted @ 2013-07-29 20:09 aiaito 阅读(220) 评论(0) 推荐(0)
摘要:个人认为:在实际项目开发中,表设计需要有适量的冗余,另外不建议遵循严格的关联关系(太死,不符合实际业务需求)。在建表设立自增ID时,要考虑表复制的问题(一般手动插入自增id也可以考虑唯一标示符)! 阅读全文
posted @ 2012-11-06 12:08 aiaito 阅读(218) 评论(0) 推荐(0)
摘要:ALTER PROCEDURE dbo.dingpiaoinsert(@userId uniqueidentifier,@Str nvarchar(200),@movie_yingtingid int,@date datetime)ASbegin begin try DECLARE @Index int; DECLARE @Left nvarchar(50); WHILE CHARINDEX('|',@Str) > 0 BEGIN SELECT @Index = CHARINDEX('|',@Str); SELECT @Left = LEFT(@Str,@ 阅读全文
posted @ 2012-04-23 19:28 aiaito 阅读(384) 评论(0) 推荐(0)