随笔分类 -  SQL

摘要:--================================================--绕圈的SQL算法(感觉很笨,不知道有没有更好的算法)--作者:冷箫轻笛--日期:2008-02-21--执行方式(参数必须为整数的平方,但大小并不是无限制的)--exec raoquan 2500--================================================... 阅读全文

posted @ 2009-06-24 13:03 冰菓 阅读(1082) 评论(1) 推荐(0) |

摘要:declare @date datetimeset @date='20090423'select [本周所有日期]=convert(varchar(10),dateadd(dd,a.number,@date+2-datepart(dw,@date)),120) from master..spt_values a where type='p' and number<=6/*本周所有日期 ---... 阅读全文

posted @ 2009-06-24 12:48 冰菓 阅读(183) 评论(0) 推荐(0) |

摘要:1、用BACKUPLOGdatabaseWITHNO_LOG清除日志 把数据库属性中的故障还原模型改为“简单”可以大大减慢日志增长的速度。 如果把还原模型调到简单,这样就不支持时间点还原了,但是日志文件会很小,如果数据比较重要推荐还是把数据库的还原模型调为完全 用BACKUPLOGdatabaseWITHNO_LOG命名后,会截断不活动日志,不减小物理日志文件的大小,但逻辑... 阅读全文

posted @ 2009-06-23 20:03 冰菓 阅读(278) 评论(0) 推荐(0) |

摘要:使用 Transact-SQL 语句循环结果集有三种方法使用可以通过使用 Transact-SQL 语句遍历一个结果集。 一种方法是使用 temp 表。 使用这种方法您创建的初始的 SELECT 语句的"快照"并将其用作基础"指针"。 例如: /**//**********example1**********/declare@au_idchar(11)setrowcount0select*into... 阅读全文

posted @ 2009-05-20 10:41 冰菓 阅读(927) 评论(0) 推荐(0) |

摘要:以下以SQL Server 2000中的NorthWind数据库中的Customers表为例,用 游标(Cursor) + While循环 的方法, 对Customers表中的CompanyName列进行遍历declare @customer nvarchar(50)declare pcurr cursor forselect distinct companyname from customers... 阅读全文

posted @ 2009-05-20 10:40 冰菓 阅读(860) 评论(0) 推荐(0) |

摘要:以下以SQL Server 2000中的NorthWind数据库中的Customers表为例,用 临时表 + While循环 的方法, 对Customers表中的CompanyName列进行遍历create table #temp( id int identity(1,1), customer nvarchar(50))declare @customer nvarchar(50)declare @... 阅读全文

posted @ 2009-05-20 10:39 冰菓 阅读(1422) 评论(0) 推荐(0) |

摘要:这段时间在做抓包项目,需要把抓来的数据插入到数据库中,特做了四种插入数据算法比较。数据库:SQL Server Management Studio Express数据库名:testTest中的表:TBL1(id bigint,name nvarchar(50),sex nvarchar(10),remark nvarchar(50)) 这张表就是要插入的数据开发语言:vb.net 2008插入算法... 阅读全文

posted @ 2009-05-07 22:19 冰菓 阅读(355) 评论(0) 推荐(0) |

摘要:四,根据条件有选择的UPDATE。 例,有如下更新条件 工资5000以上的职员,工资减少10% 工资在2000到4600之间的职员,工资增加15% 很容易考虑的是选择执行两次UPDATE语句,如下所示--条件1UPDATE PersonnelSET salary = salary * 0.9WHERE salary >= 5000;--条件2UPDATE PersonnelSET salar... 阅读全文

posted @ 2009-05-06 22:20 冰菓 阅读(218) 评论(0) 推荐(0) |

摘要:Case具有两种格式。简单Case函数和Case搜索函数。--简单Case函数CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女'ELSE '其他' END--Case搜索函数CASE WHEN sex = '1' THEN '男' WHEN sex = '2' THEN '女'ELSE '其他' END这两种方式,可以实现相同的功能。简单Case函数的写法相对... 阅读全文

posted @ 2009-05-06 22:19 冰菓 阅读(214) 评论(0) 推荐(0) |

摘要:①为什么要使用存储过程?  因为它比SQL语句执行快.  ②存储过程是什么?  把一堆SQL语句罗在一起,还可以根据条件执行不通SQL语句.(AX写作本文时观点)  ③来一个最简单的存储过程CREATE PROCEDURE dbo.testProcedure_AXASselect userID from USERS order by userid desc   注:dbo.testProcedur... 阅读全文

posted @ 2009-05-06 22:17 冰菓 阅读(186) 评论(0) 推荐(0) |

摘要:若想将姓名、身份证号、住址这三个字段完全相同的记录查询出来 select p1.* from persons p1,persons p2 where p1.id<>p2.id and p1.cardid = p2.cardid and p1.pname = p2.pname and p1.address = p2.address可以实现上述效果. 几个删除重复记录的SQL语句1.用ro... 阅读全文

posted @ 2009-05-06 22:16 冰菓 阅读(219) 评论(0) 推荐(0) |

摘要:/* 导出到excelEXEC master..xp_cmdshell 'bcp SettleDB.dbo.shanghu out c:\temp1.xls -c -q -S"GNETDATA/GNETDATA" -U"sa" -P""' /* 导入ExcelSELECT * FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0', 'Data S... 阅读全文

posted @ 2009-02-14 21:30 冰菓 阅读(213) 评论(0) 推荐(0) |

摘要:通过批处理执行sql命令: 1. Restore.bat文件内容: osql -E -S -i C:\TempDB\Restore.txt 2. Restore.txt文件内容: use master if exists (select * from sysdevices where name='TruckDB') EXEC sp_dropdevice 'Tr... 阅读全文

posted @ 2009-02-14 21:29 冰菓 阅读(317) 评论(0) 推荐(0) |

摘要:一、前言:在经过一段时间的存储过程开发之后,写下了一些开发时候的小结和经验与大家共享,希望对大家有益,主要是针对Sybase和SQL Server数据库,但其它数据库应该有一些共性。 二、适合读者对象:数据库开发程序员,数据库的数据量很多,涉及到对SP(存储过程)的优化的项目开发人员,对数据库有浓厚兴趣的人。 三、介绍:在数据库的开发过程中,经常会遇到复杂的业务逻辑和对数据库的操作,这个时候就会用... 阅读全文

posted @ 2009-02-14 21:27 冰菓 阅读(136) 评论(0) 推荐(0) |

博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3