我们有一张表:类别
|---------------------|------------------|
| category_id | name |
|---------------------|------------------|
| 1 | 'text 1' |
|---------------------|------------------|
| 2 | 'text 2' |
|---------------------|------------------|
我们需要这样做:
伪SQL代码:
SELECT * FROM categories WHERE case when $1 != 0 then category_id = $1 end;
$1
- 输入参数的值
是否可以使用一个 SQL 查询在 PostgreSQL 中执行此操作?
我猜你想要:
SELECT c.*
FROM categories c
WHERE $1 = 0 OR c.category_id = $1;
如果输入参数是0
,则返回所有行,否则返回匹配行。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句