首页 > 数据库 >sql 条件用空值进行比对的结果

sql 条件用空值进行比对的结果

时间:2024-06-06 18:10:55浏览次数:21  
标签:OrderID join 结果 sql 空值 inner EqNo NULL EntryEqNo

select SUM(e.Qty) as InputQty
from UT_InputInfo as a 
inner join T_ProcessDef as b 
on a.ProcessID=b.ProcessID
inner join UT_PrdTask as d 
on a.OrderID=d.OrderID
inner join dbo.UT_LabelInfoRec as e 
on a.LabelPrtRecID=e.PrtRecID
inner join UT_PrdTask as h
on e.OrderID=h.OrderID
and a.OrderID=@OrderID and e.BIN=@BIN and a.EqNo=@EqNo AND a.SpecialType=@SpecialType 
and e.EntryEqNo <> @EqNo --投入数去除同机台打印出来的标签
--EntryEqNo为null的时候会让查询结果为空

image

使用 NULL 值进行比较时,因为 NULL 在 SQL 中表示未知值,因此任何与 NULL 进行的比较都会返回 UNKNOWN,而不是 TRUE 或 FALSE

如果 EntryEqNo 是 NULL 时,比较操作会返回 UNKNOWN,因此不会返回记录。
and e.EntryEqNo <> @EqNo改成AND COALESCE(e.EntryEqNo, '') <> @EqNo;
将NULL 值转换为空字符串就能避免这个情况了

标签:OrderID,join,结果,sql,空值,inner,EqNo,NULL,EntryEqNo
From: https://www.cnblogs.com/gho13954/p/18235761

相关文章

  • Web攻防:SQL注入 - 前置知识
    SQL注入-前置知识1.注入原理1.1.什么是SQL注入1.2.SQL注入产生的条件2.系统函数2.1.version()-MySQL版本2.2.user()-数据库用户名2.3.database()-数据库名2.4.@@datadir-数据库路径2.5.@@version_compile_os-操作系统版本3.字符串连接函数3.1.C......
  • 聊聊如何理解MySQL引擎--Innodb和MyISAM和Memory
    mysql的常见的引擎有许多比如,MYISAM、Innodb、Memory、MERGE。可以通过mysql>showengines;查看数据库提供的引擎:我们今天聊聊如何理解Innodb和MyISAM,Memory,这是面试时会问的问题。首先是Innodb:先上概念:Innodb:行级锁,提供了具有提交、回滚和崩溃回复能力的事务安全,支......
  • Java (Docker MySql)
    前沿加油每天进步一点就是无敌可以去官网下载Docker yuminstall-ydocker重启刷新停止sudosystemctlstartdockersudosystemctlstopdockersudosystemctlrestartdocker哈可以装客户端端dcocker直接安装就完事了  然后安装mysql然后遇到这样的......
  • python SQLite3 库
    sqlite3是一个python中内置数据库,执行时会在本地文件夹中创建一个数据库   importsqlite3#连接到数据库,如果数据库不存在,则会被创建conn=sqlite3.connect('example.db')#创建一个cursor对象cursor=conn.cursor()#创建表格的SQL命令create_table_query......
  • MySQL Shell 使用指南
    前言:MySQLShell是官方提供的MySQL周边适配组件,是新一代的高级客户端,在MySQL8.0及其以后的版本得以慢慢推广应用。之前笔者因为MySQL8.0用得比较少,一直没有详细使用过这个工具,近期在捣鼓MySQL8.0,趁此机会,一起来学习下吧。1.MySQLShell介绍与安装使用MySQLShell......
  • msSQL 语句查询时 charindex()方法的妙用
    CHARINDEX(expressionToFind,expressionToSearch[,start_location])参数说明:expressionToFind:必需,要查找的字符串。expressionToSearch:必需,要进行查找的字符串表达式。start_location:可选,指定搜索的起始位置,默认为1。如果指定了起始位置,则从该位置开始搜索。list变......
  • Java 项目防止 SQL 注入的四种方案
    什么是SQL注入?SQL注入即是指web应用程序对用户输入数据的合法性没有判断或过滤不严,攻击者可以在web应用程序中事先定义好的查询语句的结尾上添加额外的SQL语句,在管理员不知情的情况下实现非法操作,以此来实现欺骗数据库服务器执行非授权的任意查询,从而进一步得到相应的数据信息......
  • sql漏洞
    sql注入原理:Web应用程序对用户输入的数据合法性没有过滤或者是判断,攻击者可以在Web应用程序中事先定义好的查询语句的结尾上添加额外的SQL语句,在管理员不知情的情况下实现非法操作,以此来实现欺骗数据库服务器执行非授权的任意查询,从而进一步得到相应的数据信息。注入类型:按照注......
  • mysql数据备份和还原知识点
    MySQL数据备份和还原是数据库管理的关键操作,确保数据的安全性和可恢复性。以下是关于MySQL备份和还原的一些关键知识点:1、数据备份    1.1、mysqldump工具:                mysqldump是MySQL提供的一个命令行实用程序,用于创建数据库或表的结构以......
  • Mysql基础教程(14):UNION
    MySQLUNION的用法与实例在本文中,我们讨论在MySQL中对两个结果集进行UNION运算,以及UNION运算的规则。在MySQL中,UNION操作符是一个集合操作符,它用于合并【2个结果集】中的所有的行。SQL标准中定义了3个集合操作符:UNION,INTERSECT和MINUS。目前MySQL......