问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

sql语句中判断条件的使用

发布网友 发布时间:2022-04-29 18:03

我来回答

5个回答

懂视网 时间:2022-04-29 22:25

IF EXISTS (SELECT * FROM MASTER.sys.sysdatabases WHERE NAME = ‘库名‘)

  PRINT ‘exists ‘ 

else 

  PRINT ‘not exists‘

-- 判断要创建的表名是否存在 

IF EXISTS (Select * From sysObjects Where Name =‘表名‘ And Type In (‘S‘,‘U‘))

  PRINT ‘exists‘

ELSE

  PRINT ‘not exists‘

GO

--判断要创建临时表是否存在 

If Object_Id( ‘Tempdb.dbo.#Test‘) Is Not NULL--#Test 为临时表名 

Begin 

  print ‘存在 ‘ 

End 

Else 

Begin 

  print ‘不存在 ‘ 

End

-- 判断要创建的存储过程名是否存在 

IF EXISTS (Select * From sysObjects Where Name =‘存储过程名‘ And Type In (‘S‘,‘P‘)) 

  PRINT ‘exists‘

ELSE

  PRINT ‘not exists‘

GO 

--判断列名是否存在

IF EXISTS (SELECT O.NAME AS 表名,C.NAME AS 列名 FROM SYSOBJECTS O INNER JOIN SYSCOLUMNS C ON O.ID=C.ID  WHERE O.NAME= ‘表名‘ AND C.NAME = ‘列名‘)

  SELECT ‘EXISTS‘

ELSE 

   SELECT ‘NOT EXISTS‘

 

--判斷 表A 列C 是否存在

   IF NOT EXISTS (SELECT 1 FROM SYSOBJECTS T1 INNER JOIN SYSCOLUMNS T2 ON T1.ID=T2.ID WHERE T1.NAME=‘A‘ AND T2.NAME=‘C‘)

 

--判断表名存在的一个函数

IF COL_LENGTH( ‘表名‘,‘列名‘) IS NULL

  PRINT ‘not exists‘

ELSE

  PRINT ‘exists‘

 

--新增修改视图SP使用先DROP, 后CREATE的方式. 如果带*的视图使用sp_refreshview刷新. 前面要加 exec

    if exists (select * from dbo.sysobjects where id = object_id(N‘[dbo].[rpt_2033300001_v]‘) and OBJECTPROPERTY(id, N‘IsView‘) = 1)

    drop view [dbo].[rpt_2033300001_v]

    GO   

       

    CREATE VIEW dbo.rpt_2033300001_v  

    AS  

    *********

 

 

   if exists (select * from dbo.sysobjects where id = object_id(N‘[dbo].[存储过程名]‘) and OBJECTPROPERTY(id, N‘IsProcedure‘) = 1)

   -- 删除存储过程

   drop procedure [dbo].[存储过程名]

   GO

 

Sql中判断"库、表、列,视图,存储过程"是否存在

标签:

热心网友 时间:2022-04-29 19:33

1、首先我们打开SQL Server Management Studio管理工具,点击【新建查询】,新增一个书写sql语句的窗口。

2、在上一步打开的sql语句输入窗口,定义一个整数类型的变量,设置初始值等于10。

3、使用if条件语句,判断上面的临时变量是否等于10,如果等于就输出一行文字。

4、当上面的sql语句写完之后,点击顶部菜单的【执行】,就能运行当前窗口的sql语句了,此时可以看到下方输出了一行文字,刚好与if条件语句内部的内容一致,说明这个if条件判断成立。

5、这个时候就可以使用else语句。例如,判断变量是否等于5,不管是否等于都输出一句话。从运行结果可以看出,最终输出的是else下面的内容。

6、上面的sql语句,内容判断其实很简单,但是,语句看起来有点繁琐。那么,当if、else判断成立后,各自只有一条sql语句执行的时候,就可以省略begin-end。

7、如果条件判断不止两个结果,比如有三个结果,就可以使用[if]-[else if]-[else]的结构,假设还有4个结果,就在中间继续添加else if即可。

热心网友 时间:2022-04-29 20:51

if exists(select 0 from table_2)
    select * from table_1 where  number in(select number from table_2)
else
    select * from table_1

 使用Exists判断是否有数据速度最快,效率最高,其他的使用Count()方式,都要遍历table_2表,而Exists判断方式只要扫描到一行即会认为表达式为真

热心网友 时间:2022-04-29 22:25

给出两种方式供参考

M1:
select * from table_1 
union
select * from table_1 where number in(seelct number from table_2)
M2:
declare
 v_num number;
 v_sql varchar2(1000);
begin
 select count(*) into v_num from table_2;
 if v_num>0 then
    v_sql=select * from table_1 where  number in(select number from table_2);
 else
    v_sql=select * from table_1;
exception
 when no_data_found then
   ......
end;

热心网友 时间:2022-04-30 00:17

declare @no int
select @no = count(1) from table_2

if @no = 0
select * from table_1
else
select * from table_1 where number in(select number from table_2).
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
胜达这款车百公里油耗多少? 胜达节能油加盟办厂可靠吗是不是骗子 河南洛阳胜达就是骗子,我把钱交了也不来人了,他们一个老总说了爱咋办... 胜达油是个骗局吗 胜达节能油是什么? 叩解度关于叩解的论述 湿重跟湿重有关的打浆磨片 戴尔XPS M1330-950重要参数 如果到别的单位去面试的话 如果人家问起为什么会选择这家公司而离开另外... 学生会被两个部门同时面试怎么办 酒糟鼻激光治疗好吗?具体是怎么治的啊? 激光治疗早期酒糟鼻有什么副作用? 酒糟鼻做激光后几天后才褪光印 什么是激光酒糟鼻治疗的? 激光酒糟鼻治疗有什么样的好处? 激光治疗酒渣鼻详解有哪些? 支付宝设备管理手机支付宝钱包在那可以看到设备管理 激光治疗酒糟鼻 我在正规医院也做了好几次了 但是一直也没治好 我就是想知道有治好的没有,托请走开。 得了酒糟鼻一年有余,其间用过甲硝唑凝胶、做过两次激光冶疗,还吃过中药美诺平黔粒,现在症状:鼻头微红 激光治疗酒糟鼻的危害? 激光治疗酒糟鼻效果好不好? 林正英的《僵尸道长》在哪里可以看?- 问一问 怎么绑定手表? 基金代码519o11净直 红茶有什么好喝的茶! 什么样的茶称为绿茶,什么样的又称为红茶 请问:‘海富精选’和‘海富通精选’是同一个基金吗?怎么查不到‘海富精选’的净值了? 519005基金今天净值 - 百度 - 百度这几年分过红吗 在初中怎样提高学习效率? 中考词汇是火星英语好还是闪过 好? 孕妇为什么要吃瑞康能纤维粉 瑞康能孕妇吃有副作用吗 江苏瑞康智能科技有限公司怎么样? 济南益瑞康智能科技工资发放即使吗? 济南益瑞康智能科技有限公司怎么样? 我有忧郁症,我每天晚上都要吃斯瑞康才能入睡。 平时喜欢喝羊奶,请问加盟瑞康乳业能赚钱吗? 磁瑞康鞋对身体有没有伤害? OPPO R7软件闪退怎么办 OPPOR7s玩王者荣耀闪退,咋办 OPPO R7s手机软件运行不了,闪退 oppor7玩游戏闪退咋办 OPPOR7手机玩游戏闪退咋办 oppor7闪退怎么办? OPPO R7s系统更新为什么总是闪退? oppor7s下载一个双人小游戏之后,所有东西进了就闪退怎么办? 为什么OPPOr7s玩游戏会闪退? vivo play6怎么隐藏应用? 金色指甲油 怎么搭配全身颜色? 金色配什么颜色好看?美甲