1.强制类型转换 nvarchar->decimal
DECLARE @i NVARCHAR(20) , @num DECIMAL(10, 4) SET @i = '1083.589' SET @num = @i SELECT @num SET @num = CAST(@i AS DECIMAL(10, 4)) SELECT @num
DECLARE @i NVARCHAR(20) , @num DECIMAL(10, 4) SET @i = '1083.589' SET @num = @i SELECT @num SET @num = CONVERT (DECIMAL(10, 4),@i) SELECT @num
2.存储过程执行慢的可能原因和解决方法
执行较慢,可能是当存储过程涉及的对象结构调整, 或者相关的数据产生了很大变化, 这可能导致原来的计划不适合当前的现状(执行计划过期), 这种情况下应该重新编译存储过程。
重新强制重编译存储过程
exec sp_recompile @objname='存储过程的名字'
3.存储过程返回表数据并保存到相同结构的临时表中
SELECT * INTO #a FROM OPENROWSET('SQLOLEDB', 'Server=.;Database=Demo;uid=sa;pwd=123', 'exec p_Demo') AS a SELECT * FROM #a
Create table #table( 字段1,字段2) insert into #table exec 存储过程
4.获取当前时间并转化为字符串类型
2017-08-04 11:41:59
SELECT CONVERT(VARCHAR(100), GETDATE(), 120)
20170804
SELECT CONVERT(VARCHAR(100), GETDATE(), 112)
5.