gpt4 book ai didi

SQL 检查值是否存在

转载 作者:行者123 更新时间:2023-12-05 00:35:27 25 4
gpt4 key购买 nike

我有 3 张 table - TableA , TableBTableDetail

**Table Detail**
id FinalValue
1 99
2 88
3 77


**Table A**
id InitValue Num
1 10 100
2 30 200


**Table B**
id InitValue Num
3 20 200

我的要求是获得 FinalValue来自 TableDetail基于
Num 

( Num 值将由用户从文本框 UI 中选择。如果 TableB 有特定 Num 的记录,则使用 Table B 的 id。如果没有,则使用 Table A 的 id。
假设表 A 具有所有 Num 值的记录。

例如,
If Num=200:

由于 Num=200 的记录存在于表 B 中,使用TableB对应的 id (3)并从 TableDetail 中获取 FinalValue,其中 id=3,即
FinalValue = 77

If Num =100:

由于TableB 没有 Num=100 的任何记录,使用TableA对应的 id (1)并从 TableDetail 中获取 FinalValue,其中 id=1,即
FinalValue = 99

你能帮我设计一个相同的 PL/SQL 查询吗?谢谢!

最佳答案

用 UI 中的值替换 200,您可以这样做:

declare @id int

select @id = id from TableB where Num = 200

if(@id is null)
begin
select @id = id from TableA where id = 200
end

select FinalValue from Detail where id = @id

关于SQL 检查值是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9360828/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com