SQL Server 相关整理

来源:互联网 发布:淘宝下拉词提取工具 编辑:程序博客网 时间:2024/05/21 17:07
查询结果放入临时表
--select * into #temp from (sql查询语句)T
--drop table #temp(临时表用完记得删除)

--对于主表中数据如果存在历史数据 最好使用left join,不至于使历史数据丢失,对于为空列可以使用isnull默认值设置
--isnull(表查询列名,'默认值') 或者 isnull(表查询列名,sql查询语句)

表变量
DECLARE @temp TABLE (
        FORM_NO   INT,
        SEQ       INT,
        ITEM_CODE NVARCHAR(4),
        ITEM_DESC NVARCHAR(500),
        CATEGORY_CODE NVARCHAR(3),
        CATEGORY_DESC NVARCHAR(500),
        EVN_ACC   CHAR(1),

        [type]    CHAR(1));

将存储过程执行结果放入表变量

INSERT INTO @temp EXEC [usp_EnvAcc_GetDatabyType] @intForm_No,'BQP.FORM.3'
select * from @temp

判断对象存在与否,若存在,先删除再创建
IF EXISTS (SELECT *
           FROM   sysobjects
           WHERE  id = Object_id('ENV_ACCFormData'))
  DROP TABLE ENV_ACCFormData
ELSE
  CREATE TABLE ENV_ACCFormData
    (
       ID        INT IDENTITY(1, 1) NOT NULL,
       FORM_Kind NVARCHAR(30) NOT NULL,
       FORM_NO   INT NOT NULL,
       SEQ       INT NOT NULL,
       ACCItem   NVARCHAR(4) NOT NULL,
       [Type]    NVARCHAR(1) NOT NULL
    )


多表连接更新

update  a  set a.Email=b.Email from NTUser20121204 b,NTUser a where  a.ID=b.ID

 


 


原创粉丝点击