gpt4 book ai didi

SQL - 如果为空,则默认选择

转载 作者:行者123 更新时间:2023-12-04 15:56:45 24 4
gpt4 key购买 nike

我有一个这样的查询:

SELECT id, name, price, floorplan 
FROM Inventory
ORDER BY price

这将返回我的 Inventory 表中按价格排序的 id、名称、价格、平面图。使用此查询,我返回了 3 行,最后一行有一个平面图值,另外两行为空。是否可以获得非空平面图来替换空平面图列?我不想将这些分组,因为我需要返回 3 行。

最佳答案

你可以使用像 max() over() 这样的窗口函数聚合:

select 
id
, name
, price
, max(floorplan) over () as floorplan
from Inventory
order by price

rextester 演示:http://rextester.com/GDWH85581

使用此测试设置:

create table inventory (id int, name varchar(32), price decimal(9,2), floorplan int)
insert into inventory values
(1,'one',1.01,null)
,(2,'two',2.02,null)
,(3,'three',3.03,1024)

返回:

+----+-------+-------+-----------+
| id | name | price | floorplan |
+----+-------+-------+-----------+
| 1 | one | 1.01 | 1024 |
| 2 | two | 2.02 | 1024 |
| 3 | three | 3.03 | 1024 |
+----+-------+-------+-----------+

关于SQL - 如果为空,则默认选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46570858/

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