time为借和还的时间,h_person为借阅人当有人借图书的时候,产生一条数据,归还的时候还会产生一条读取数据的时候,需要把借和还这两条数据做匹配,然后计算时差,包括(借阅人,借阅时长,借出时间,归还时间);WITH cte AS (SELECT *, ROW_NUMBER() OVER (PARTITION BY h_person ORDER BY [time]) rn--按h_p…
declare @name nvarchar(50),@age int DECLARE 游标名称 CURSOR FOR SELECT name,age Where age>18 --获取数据集并定义至游标里 OPEN 游标名称--打开游标 FETCH NEXT FROM 游标名称 INTO @name, @age--将游标中读取的name和age赋值给变量@name,@age WH…
这种情况应该是进程还在进行中,关掉进程即可SELECT request_session_id spid,OBJECT_NAME (resource_associated_entity_id)tableName FROM sys.dm_tran_locks WHERE resource_type='OBJECT';查询出来的数据,找到自己想查找的表对应的ID编号,结束掉Exec(&#…
CREATE FUNCTION [dbo].[removehtml] (@str NVARCHAR(MAX)) RETURNS NVARCHAR(MAX) AS BEGIN WHILE CHARINDEX('<', @str) > 0 BEGIN SET @str = STUFF(@str, CHARINDEX('<', @str), CHARINDEX('>…
Sql Server 中一个非常强大的日期格式化函数Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AMSelect CONVERT(varchar(100), GETDATE(), 1): 05/16/06Select CONVERT(varchar(100), GETDATE(), 2): 06.05.16Select C…
declare @id int --定义变量 declare @name varchar(10) --定义变量 declare cur_c cursor for select ID,name from test --定义游标 open cur_c --打开游标 fetch next from cur_c into @id,@name --取出游标中内容到变量 while @@fetch_stat…
ALTER proc [dbo].[Ding_Add] @UserId int, @DingDate datetime, @DaoDate datetime, @SellDate datetime, @Name nvarchar(50), @Tel varchar(50), @Address nvarchar(50), @Whatsapp varchar(50), @ThingId varchar…
当我们往设有自增序列的表中插入数据时,有时候我们往往希望执行insert语句后直接能返回这个新生成的数据的id值(假如id就是被设置为自增的序列),这个问题在网上查了好久,困惑了我好几天,终于找到一个能够解决的方案,在此总结一下,分享给大家! insert message values(?,?,?) select @@identity …
select * from ( select top 1 * from process where P_id>104481 union all select top 1 * from process where P_id<104481 order by P_id desc ) process order by P_id asc
登陆数据库后,右键打开表提示:目录名无效,执行SQL语句也提示有错误,现在把解决方法分享给大家点工具栏中〔显示估计的查询计划〕,结果提示Documents and Settings\XXX\Local Settings\Temp\1\xxx.tmp文件不能访问。查看发现没有1这个子目录--这是给1号远程连接会话用的临时目录,手工创建子目录1,即可正常查询
停止SQL server 2005 所有服务 用 Windows Install Clean Up 工具卸载SQL server 2005组件 推荐使用卸载工具SrvInstw.exe(使用卸载工具卸载所有SQL Server服务和相关组件  …
JDBC连接各种数据库的字符串大同小异,在此总结一下,备忘。oracle driverClass:oracle.jdbc.driver.OracleDriver url:jdbc:oracle:thin:@127.0.0.1:1521:dbnamemysql driverClass:com.…
用SQL实现生日提醒功能3天后生日的:select * from staff where datepart(m,staff_time)=datepart(m,getdate()) and datepart(d,staff_time)=datepart(d,getdate())+3几天生日的:select * …
按指定符号分割字符串,返回分割后的元素个数,方法很简单,就是看字符串中存在多少个分隔符号,然后再加一,就是要求的结果。CREATE function Get_StrArrayLength ( @str varchar(1024), --要分割的字符串 @split varchar(10) --分隔符号 ) returns int as begin declare @location int dec…
把Old数据库改为New数据库 打开“企业管理器” 找到 Old数据库--》右键--》所有任务--》分离数据库 然后到C:\Program Files\Microsoft SQL Server\MSSQL\Data下找到Old_Data.mdf和 Old_log.ldf 把Old_Data换成你想要的名字例如New.mdf、New.ldf 然后到企业管理器,找到 数据库 --》右键--》所有任务-…
用户sa登陆失败,原因"未与信任的SQL server连接相关联"解决方法! 首先应当检测密码是否正确。然后按下面方法。 MS SQL 有两种认证模式。要选择 “SQL和Windows认证模式 ”。 1---Windows认证模式 2---SQL和Windows认证模式 方法: 企业管理器-->右键你的实例(就是那个有绿色图标的)-->属性-->安全-->…
表Things 字段 User//会员名 ThingName//产品名称 Sell//是否卖出,bit型,0表示未卖,1表示售出 InTime//卖出时间 一周以内卖得最多的前十名会员 select top 10 user, count(user) from Things where Sell = 1 and datediff( wk, InTime, getdate() ) =…
日期段:select * from knowip where intime between '2009-03-25' and '2009-03-29' 时间段:select * from knowip whe…
CREATE PROCEDURE Job_GetByID @J_ID int AS begin select * from Job where J_ID=@J_ID end GO