SQL关于DATETIME 、DATETIME2(0) 转换四舍五入的问题
--假如 @time='2018-09-29 09:46:51.923' DECLARE @time DATETIME = GETDATE() --使用以下转换,@time会变成2018-09-29 09:46:52,注意秒被四舍五入了 SELECT CAST(@time AS DATETIME2(0)) --使用下转换,@time会变成2018-...
--假如 @time='2018-09-29 09:46:51.923' DECLARE @time DATETIME = GETDATE() --使用以下转换,@time会变成2018-09-29 09:46:52,注意秒被四舍五入了 SELECT CAST(@time AS DATETIME2(0)) --使用下转换,@time会变成2018-...
SELECT a.name , b.rows FROM sysobjects AS a INNER JOIN sysindexes AS b ON a.id = b.id WHERE ( a.type = 'u' ) AND ( b.indid IN ( 0, 1 ) ) ORDER BY b...
在SQL查询中,通过 select a,b, '' as xxx into #temp from table 创建临时表添加不存在的字段xxx,如果接下来对xxx更新或者写入数据,会提示截断二进制字符串错误,因为添加的xxx并没有长度,正确的做法是将'' as xxx换成 cast('' as nvarchar(50)) as xxx 来指定有长度,或...
select [name] ,create_date ,modify_date FROM sys.all_objects where type_desc = N'SQL_STORED_PROCEDURE' and name = '存储过程名称'
--创建一个从1开始,每次递增1,最小值为0,最大值为100的序列GetIdCREATE SEQUENCE GetId AS BIGINT START WITH 1 INCREMENT BY 1 MINVALUE 0 MAXVALUE 100;--使用序列DECLARE @id INT = NEXT VALUE FOR GetIdSELECT @id
DELETE FROM #table WHERE EXISTS ( SELECT node , mailNo FROM #table b WHERE #table.node = b.node...
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'字段说明' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'表名', @level2type=N'COLUMN...
NOLOCK(不加锁) 此选项被选中时,SQL Server 在读取或修改数据时不加任何锁。 在这种情况下,用户有可能读取到未完成事务(Uncommited Transaction)或回滚(Roll Back)中的数据, 即所谓的“脏数据”。 HOLDLOCK(保持锁) 此选项被选中时,SQL Server 会将此共享锁保持至整个事务结束,而不会...
触发器语句中使用了两种特殊的表:deleted 表和 inserted 表。Deleted 表用于存储 DELETE 和 UPDATE 语句所影响的行的复本。在执行 DELETE 或 UPDATE 语句时,行从触发器表中删除,并传输到 deleted 表中。Deleted 表和触发器表通常没有相同的行。Inserted 表用于存储 INSERT 和 U...
DECLARE @jsonCN NVARCHAR(MAX)='{"branchCode":"769DB","cpCode":"123789","waybillInfoList":[{"additionalServiceList":null,"bizIdList":["39563209437985575"],"consigneeAddress":{"a...