随笔分类 - DB
摘要:SELECT CountDate=CONVERT(CHAR(10),DATEADD(DAY,0-rn,GETDATE()),20)FROM (SELECT TOP 7 rn=row_number() OVER(ORDER BY GETDATE())-1 FROM sysobjects)t ORDER...
阅读全文
摘要:大家都知道执行ExecuteNonQuery插入记录的时候会返回受影响的行数。在一次操作通过该返回值判断Insert是否成功的时候发现返回值是-1,查看数据库记录已经插入。再查看程序发现是通过存储过程插入记录。该存储过程与以前的区别是增加了一条语句SET NOCOUNT ON注释掉该语句返回值正常S...
阅读全文
摘要:结构图:表结构:R字段类型允许为NullIdINTFALSENameNVARCHAR(50)TRUEParentIdINTTRUEM字段类型允许为NullIdINTFALSENameNVARCHAR(50)TRUEParentIdINTTRUERIdINTTRUE查询1.根据给定节点查找其叶子节点e...
阅读全文
摘要:要转换的XMLDECLARE @xml XML=N'55.376.98'SELECT N.v.value('.', 'decimal(24,4)') AS I_RNumber, N.v.value('@id[1]', 'int') AS IType FROM @xml.nodes('/root/pa...
阅读全文
摘要:select * from (select row_number() over(partition by 分组字段 order by 排序字段) as rownum -- 排序并分组, * -- 所需显示的字段from 表名) as Twhere T.rownum = 1
阅读全文
摘要:以前一直是在new的时候直接指定SqlParameter[] parms = new SqlParameter[]{new SqlParameter('@id','id'),new SqlParameter('@name','name')};现在需要根据条件判断需要添加哪些参数开始以为可以像List...
阅读全文
摘要:最近存储过程用到要显示最近几个月的数据,但是存储的数据可能不是每个月都有。因此需要事先生成一个最近几个月连续的表,然后与数据表左连接。月份2015-012015-022015-032015-042015-05+月份数据2015-01234.12015-02253.22015-03243.42015-...
阅读全文
摘要:1.将查询数据插入临时表最开始我这么写的DECLARE @sql varchar(max)SET @sql='select * into #tmp from tb'EXEC(@sql)SELECT * FROM #tmp报错对象名'#tmp'无效可以改成这样子CREATE TABLE #tmp(.....
阅读全文
摘要:一、启动Microsoft SQL Server Management Studio二、打开“工具”->“SQL Server Profiler”->“文件”->“新建跟踪”->“运行”时间长一点,点“停止”,然后保存这个跟踪三、“SQL Server Profiler”->“工具”->“数据库引擎...
阅读全文
摘要:1.尽量避免在WHERE子句中对字段进行NULL值判断在WHERE子句中对字段进行NULL值判断会导致引擎放弃使用索引而进行全表扫描。如:SELECT id FROM t WHERE num IS NULL可以在num字段设置默认值0,确保表中num字段没有NULL值,然后这样查询:SELECT i...
阅读全文
摘要:要实现的树如图所示,要求能根据“节点1”获取其所有子节点数据库表设计如下:在这里用到With AsWITH tb AS(SELECT nodeId,nodeName,node.parentId FROM node WHERE nodeId=1 UNION ALL SELECT node.nodeId...
阅读全文

浙公网安备 33010602011771号