摘要:环境:OS:Windows Server 2012SQL:2012 Enterprise 中文版需求:经理给了一个这样的 Linux 时间字符串:"28/Oct/2013 14:30:21";要求转换成:"2013-10-28 14:30:21" 这样的格式。其实看到这个字符串第一个想到的就是 SQL Server 里面的 Convert 函数和 Cast 函数。于是就写了一下转换代码,如下:declare @t varchar(100)Select @t =CONVERT(varchar(100), '28/Oct/2013 14:30:21&
阅读全文
摘要:数据库环境: SQL Server 2012使用到的关键字: offset、fetch、next、rows简单示例:declare @pageSize int,@currentPage intset @pageSize = 5set @currentPage = 2select * from AnalysisCodeorder by Id offset (@currentPage-1)*@pageSize rows fetch next @pageSize rows only;这句SQL的意思就是:跳过 (@currentPage-1)*@pageSize 条记录,查询之后的 @pageS..
阅读全文
摘要:/****** 对象: UserDefinedFunction [dbo].[HZ2PY] 脚本日期: 05/02/2012 18:23:38 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGO--汉字转换拼音函数ALTER Function [dbo].[HZ2PY]( @cString nVarChar (200)) Returns nVarChar(100)AS Begin Declare @nFor Int --字符串循环用 Declare @nPYFor Int --拼音串...
阅读全文
摘要:2000及2005通用分页。1:3次排序分页。select * from (select top 10 * from(select top 20 * from SourceTable order by [id] asc) as TempTable order by [id] desc) as RetTable order by [id] asc2:双TOP分页。select top 10 * from SourceTablewhere [Id] not in( select top 10 [Id] from SourceTable)3:MAX分页。select top 10 * from So
阅读全文
摘要:一、基础1、说明:创建数据库CREATE DATABASE database-name2、说明:删除数据库drop database dbname3、说明:备份sql server---创建 备份数据的deviceUSE masterEXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'---开始 备份BACKUP DATABASE pubs TO testBack4、说明:创建新表create table tabname(col1 type1 [not n
阅读全文
摘要:解决并发主要是用到了锁和事务。锁 :给记录或表加上锁是为了对当前操作对象加上一个状态表示位, 让其他用户在获取编辑权限时有了判断。事务:是为了确保一组操作的完整性。(要么就全部成功,要么就全部失败)--------------------------------------------------------------------------------------------------------一般处理并发问题时:1.开启事务。2.申请写权限,也就是给对象(表或记录)加锁。3.如果失败,则结束事务,过一会重试。4.如果成功,也就是给对象加锁成功,防止其他用户再用同样的方式打开。5.进行
阅读全文
摘要:记录一下。假如现在有一个表结构如下图:表中数据如下图:最后结果图:首先讲一下我对行车列的理解:从图中可以看到是将workDays列进行了行转列操作。前两列是没有变的。那么前两句的代码就可以这样写:SELECT ID,UserName,接着是将workDays字段进行行转列操作,可以这样写: MAX(CASE WorkDays WHEN '2' then so else NULL end) [2], MAX(CASE WorkDays WHEN '3' then so else NULL end) [3], MAX(CASE WorkDays WHEN '
阅读全文
摘要:查询某个存储过程是否已存在,如果存在就删除这个存储过程,使用系统表 sysobjects :1 if exists (select 1 from dbo.sysobjects where name = 'SP_GetStaffRolesInfo')2 drop procedure SP_GetStaffRolesInfo3 GO查询某一列在某个表中是否存在,如果不存在就添加此列,使用系统表 syscolumns 和 object_id()函数:1 if not exists(select 1 from syscolumns where id=object_id(N'St
阅读全文
摘要:declare @Id intset @Id = IDENT_CURRENT('一个表名')print(@id)-- 输出最后插入的那条记录的自增ID 参考:http://msdn.microsoft.com/zh-cn/library/ms175098.aspx
阅读全文
摘要:JOIN连接组合两个表中的字段记录,包括三种:INNER JOIN运算式:连接组合两个表中的字段记录。LEFT JOIN运算式:连接组合两个表中的字段记录,并将包含了LEFT JOIN左边表中的全部记录。RIGHT JOIN运算式:连接组合两个表中的字段记录,并将包含了RIGHT JOIN右边表中的全部记录。INNER JOIN设定两个表相关连的运算式,以连接组合两个表中的字段记录。INNER JOIN语法如下:FROM 表1 INNER JOIN 表2 ON 表1.字段1 比较运算子 表2.字段2两个表连接的字段,譬如 [表1.字段1=表2.字段2],必须具有相同的字段类型,但是字段名称不需
阅读全文
摘要:[代码]这一句的意思是查询数据库中距现在三个月以内的数据。getdate()取得当前日期,SQL Server函数和now()一样。具体查看:http://www.w3school.com.cn/sql/func_datediff.asp
阅读全文
摘要:Sql Server 内嵌表值函数的语法及示例[代码]示例[代码]
阅读全文
摘要:通配符 含义 示例 %包含零个或更多字符的任意字符where sname like '%华%'查找姓名中含有“华”字的学生_(下划线)任何单个字符where sname like '王__'查找姓王的学生(包括姓名是三个字的)[]指定范围([a-f])或集合([abcdef])中的任何单个字符where sname like '[李,王]__'查找姓李姓王的学生[^]不属于...
阅读全文
摘要:--语 句 功 能--数据操作SELECT --从数据库表中检索数据行和列INSERT --向数据库表添加新数据行DELETE --从数据库表中删除数据行UPDATE --更新数据库表中的数据--数据定义CREATE TABLE --创建一个数据库表DROP TABLE --从数据库中删除表ALTER TABLE --修改数据库表结构CREATE VIEW --创建一个视图DROP VIEW --...
阅读全文
摘要:select * from userInfo where age like '2[25]'功能:查询userInfo表中age字段,所有以2开头,且第二位是2或5的记录。select * from userInfo where name like '_娜_'功能:查询userInfo表中name(char(6))字段所有中间一个字是“娜”的记录。下划线“_&rd...
阅读全文
摘要:SELECT TOP 10Id,FirstName,COALESCE(LastName,'') AS LastNameFROMPerson (NOLOCK)select ID,name,age,sex,address, coalesce(memo,'aa') as memo from userInfo
阅读全文
摘要:约束主要包括:•NOT NULL •UNIQUE •PRIMARY KEY •FOREIGN KEY •CHECK •DEFAULT 1、not null :用于控制字段的内容一定不能为空(NULL)。 用法 :Create table MyTable ( id varchar(32) not null, name varchar (32...
阅读全文