最近在项目中需要用到exists,所以整理下exists的相关用法,以便日后查阅.

EXISTS 指定一个子查询,用于检查子查询是否至少会返回一行数据,该子查询实际上并不返回任何数据,而是返回值True或False,检测行的存在。

语法:EXISTS subquery。参数 subquery 是一个受限的 SELECT 语句 (不允许有 COMPUTE 子句和 INTO 关键字)。结果类型为 Boolean,如果子查询包含行,则返回 TRUE。

在存储过程中查询新增的数据是否已存在某个重复的字段,如果重复则 返回false

代码如下:

if(exists(select StockPointName from IV_StockPoint      
  where StockPointName=@StockPointName 
and Orderowner=@Saloon_id
 ))return -11;

在存储过程中查询更新的数据是否已存在某个重复的字段,如果重复则返回false

代码如下:

 if(exists(select StockPointName from IV_StockPoint where StockPointName=@StockPointName

 and Orderowner=@Saloon_id

 and  StockPointId!=@StockPointId))

return -11;

注意,更新时要对主键id条件进行判断,必须是Id不同的数据的某个字段存在重复结果才是false,否则同一个id的数据没有进行任何更改也不能保存原数据,所以在这个查询中必须存在一个Id!=@Id 的条件。

相关文章:

  • 2021-11-10
  • 2021-12-03
  • 2022-02-24
  • 2021-07-18
  • 2021-12-11
  • 2021-08-31
  • 2021-08-20
  • 2021-12-27
猜你喜欢
  • 2022-12-23
  • 2021-11-23
  • 2021-11-18
  • 2022-12-23
  • 2021-07-13
  • 2022-12-23
  • 2022-03-01
相关资源
相似解决方案