sách gpt4 ai đã đi

Câu lệnh SQL If trong câu lệnh SELECT postgresql

In lại 作者:行者123 更新时间:2023-11-29 14:12:16 31 4
mua khóa gpt4 Nike

有没有办法在 select 语句中使用 if 语句?

我不能在这个中使用 Case 语句。实际上我正在使用 iReport 并且我有一个参数。我想要做的是,如果用户没有输入某个参数,它将选择所有实例。

例如一个引用性别表的人表,在 where 子句上有一个参数,查询会像这样:

SELECT * FROM persontable WHERE gender_id = $P{genderName}:numeric

如果参数 $P{genderName} 为 null 或空白,则它将选择全部。我试过这个查询:

SELECT * FROM persontable WHERE gender_id IN (SELECT CASE WHEN $P{genderName} 
IS NULL THEB (SELECT id from genderTable
WHERE id = $P{genderName}:numeric) ELSE $P{genderName}::numeric END)

但是它会返回一个错误“More that one row is returned.....”我认为这是因为 CASE 语句。我该怎么做?

1 Câu trả lời

Hãy thử cách này:

SELECT * FROM persontable 
WHERE gender_id = $P{genderName} OR $P{genderName} IS NULL

关于postgresql - SELECT 语句中的 SQL 语句 If 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13320233/

31 4 0
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com