sql - tsql 全选或使用 where 条件
问题描述
我正在制作一个应用程序,它有一个简单的 UI 来显示一个数据库表。它允许用户输入一个值来过滤行或勾选复选框以显示整个表格。
是否可以创建一个返回所有行的 where 条件我的目标是使用 SQL“从 tbl1 中选择 blah、blah2、blah3 where blah = @anInputValue”。但是这个 SQL 不能为我传递的任何值返回整个表。
废话 | 废话2 | 废话3 |
---|---|---|
1 | 2 | 3 |
4 | 5 | 6 |
7 | 8 | 9 |
当用户选中“全选”时,它返回 3 行。当用户输入 4 时,它返回中间行
我的问题是我有 4 个“全选”复选框,我不想进行很多查询和很多“如果则不然”来选择正确的查询。
解决方案
像这样,您可以将输入参数留空以获取所有值。
select *
from tbl1
where @anInputValue is null
or blah = @anInputValue
您可以使用不同的值来指示获取所有值,例如
where @anInputValue = -1
or blah = @anInputValue
推荐阅读
- spring-boot - spring boot 版本升级后如何使用 Converter 修复异常
- java - CheckBox.setChecked() 导致崩溃;CheckBox 变量未初始化,始终为空?
- python - 如何解析 JSON 文件并收集数据并保存到数据框中?
- postgresql - 使用 postgresql 和 jpa 更改数据类型时服务器挂起
- r - 根据向量中的特定条件进行过滤
- opencv - 如何在较新版本的 OpenCV-Python 中导入 cv.StereoRectify()
- sql - 显示详细 MRR 细分的 SQL 查询
- maven - Maven 正在跳过测试
- javascript - 检查数组是否包含另一个数组的每个元素
- javascript - 如何在 vanilla JavaScript 中创建一个没有 jQuery/ 的固定表?