如何检查列是否等于可以为空的变量

2023-12-19

我有一个表,其中包含允许 null 或空值的 varchar 列。

我正在编写一个存储过程,其中包含一个可以分配给空值或常规字符串(非空)的变量

它的定义如下:

declare @myvar varchar(50)

现在我正在尝试编写一个查询,该查询返回列等于此变量或者为空或 null 的行。到目前为止,我认为这会起作用:

select * from mytable where mycolumn =@myvar or mycolumn =''

但是,如果列为空且变量为空,则不会返回任何值。

我知道我可以做这样的事情:

select * from mytable where (mycolumn = @myvar and mycolum is not null) or mycolumn is null or mycolumn =''

有更好的方法吗?

PS:我不想做 ANSI_NULLS OFF

Thanks


如果希望列与参数完全匹配(包括空值)

DECLARE @myVariable varchar(10)

SELECT * 
FROM mytable 
WHERE ((@myVariable IS NULL AND myColumn IS NULL) OR myColumn = @myVariable)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何检查列是否等于可以为空的变量 的相关文章

随机推荐

  • 在 Visual Studio 2010 的 C++ 中使用 lapack C 标头时出现错误

    请帮我 我在网上查了好几个小时还是没有找到解决办法 我正在尝试使用 call lapack 函数C 功能 但我一开始就失败了 这是我的代码 include stdafx h include targetver h extern C incl
  • 需要有关在 SQL Server 上使用 SqlBulkCopy 突破极限的建议

    我正在设计一个应用程序 其中一个方面是它应该能够将大量数据接收到 SQL 数据库中 我将数据库结构设计为具有 bigint 标识的单个表 如下所示 CREATE TABLE MainTable id bigint IDENTITY 1 1
  • 在同一包中创建单独的文件夹... [ECLIPSE]

    Eclipse 是否可以在包中创建单独的文件夹 当选择 新建 gt 文件夹 时 我的eclipse版本总是创建一个包 但我希望新文件夹位于旧包中 如何才能实现这一目标 提前致谢 Patrick 如果您没有将代码放入该文件夹中 您可能想要做的
  • 如何在 R 中绘制图例而不绘制符号并且仍然使其很好地对齐?

    我可以创建一个没有绘图符号并且文本本身适合边框的绘图图例吗 例如 在以下代码中 我想要删除的图例文本之前有一个间隙 plot c 1 2 3 c 1 1 1 abline v c 1 5 2 2 5 col c blue red green
  • 区分大小写 Kotlin /ignoreCase

    我试图忽略字符串的大小写敏感性 例如 用户可以输入 巴西 或 巴西 就会触发乐趣 我该如何实施 我是科特林新手 fun questionFour val edittextCountry findViewById
  • 从反应中获取多个输出

    我需要从闪亮的反应组件中获得多个输出 例子 output a output b lt reactive a lt input abc b lt input abc 10 a b 如何完成类似上面的事情 通过它我可以获得两个输出a and b
  • Epub.js - 由于 blob URI,Phonegap 无法工作

    我正在使用 Epub js 库在 Phonegap 项目中渲染 epub 文件 文件被正确获取并解压缩 但如果在 WebView 中运行 屏幕会显示空白 在桌面和 Android 浏览器 Chrome 应用程序 中完美运行 调试 我看到if
  • 选择父菜单应显示子菜单

    我正在开发一个 Wordpress 网站并尝试显示我的菜单 如图所示 如何在选择父菜单时显示子菜单 您可以像这样创建带有辅助嵌套的主要顶部链接 ul class primary li Tutorial li ul class seconda
  • SQL 效率:WHERE IN 子查询与 JOIN then GROUP

    例如 我想获取应用了某些标签的所有项目的列表 我可以执行以下任一操作 SELECT Item ID Item Name FROM Item WHERE Item ID IN SELECT ItemTag ItemID FROM ItemTa
  • NSData 到 NSString 转换问题!

    我收到一个 NSData 的 html 文件 需要解析它以提取一些信息 我的方法是将其转换为带有UTF8编码的NSString html有非英语字符 例如俄语 它失败了 我用过类似的东西 NSString respData NSString
  • 我们有什么钩子可以在应用程序退出时终止工作线程

    我正在从应用程序的 主 线程生成新的工作线程 只要应用程序处于活动状态 这些线程就不断需要执行某些操作 而且 当应用程序退出时 我确实希望正确清理所有工作线程 无论这意味着什么 为了做到这一点 生命周期方法是唯一的地方吗 应用程序退出时是否
  • 将快捷方式绑定到命令面板命令?

    我刚刚安装了一个名为 CodeSniffer http soulbroken co uk code sublimephpcs 的插件 我想将命令面板中的其中一个命令链接到键盘快捷键 因为我经常使用它 有什么简单的方法可以做到这一点吗 或者我
  • Kendo UI Dropdown,使下拉面板比控件更宽

    在 Kendo UI Dropdown 中 是否可以使下拉面板比控件更宽 另一种可能的方法 var dropdownlist titles data kendoDropDownList set width of the drop down
  • R 中按组的组合

    我有一个关于按组组合的问题 我的迷你样本如下所示 sample lt data frame group c a a a a b b b number c 1 2 3 2 4 5 3 如果我应用以下功能combn对于数据框 它给出了以下结果
  • Flask Web 应用程序的 CSS 问题

    我无法正确输出 CSS 我的网页都是无样式的 这是我所有模板中的链接 我究竟做错了什么 为了让它工作 我需要对 Flask 做些什么特别的事情吗 我已经尝试和改变了大约半个小时 但似乎无法做到正确 总结一下 如何使用 Flask 做 CSS
  • 将“e.target”与 jQuery 对象进行比较

    我想做的事 clickedObject someDiv returns true or false 我尝试过的 e target selector returns a false negative 我的解决方法 e target attr
  • 如何在 BootstrapVue 元素上使用 Vue Test Utils 触发事件?

    这个问题让我很困难 我不明白如何制作Vue 测试工具 and BootstrapVue一起玩得很开心 一个最小的例子如下所示 MyComponent vue
  • Python 日志记录:使用毫秒时间格式

    默认情况下logging Formatter asctime s 使用以下格式打印 2011 06 09 10 54 40 638 其中 638 是毫秒 我需要将逗号更改为点 2011 06 09 10 54 40 638 要格式化时间 我
  • forEach 循环未根据需要更新数组

    我正在尝试循环 consoleOuputParamsOBJ 并更新我的 taskparamscompiled 对象列表中的记录 所需输出 process00x00 i D Code UnitTest ConsoleApp 1 00x00 p
  • 如何检查列是否等于可以为空的变量

    我有一个表 其中包含允许 null 或空值的 varchar 列 我正在编写一个存储过程 其中包含一个可以分配给空值或常规字符串 非空 的变量 它的定义如下 declare myvar varchar 50 现在我正在尝试编写一个查询 该查