zoukankan      html  css  js  c++  java
  • SQLServer 进阶记录式学习

    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.

  • 相关阅读:
    Jmeter运行原理
    hihoOffer收割练习20题目2
    hihoOffer收割练习20题目1
    STL-map容器
    STL-map容器
    2017多校合练1
    2017多校合练1
    STL之map基础知识
    STL之map基础知识
    DP入门
  • 原文地址:https://www.cnblogs.com/GaoAnLee/p/7280081.html
Copyright © 2011-2022 走看看