[数据库SQL] [leetcode] 2388. 将表中的空值更改为前一个值

2388. 将表中的空值更改为前一个值

  • 描述

表: CoffeeShop

±------------±--------+

| Column Name | Type |

±------------±--------+

| id | int |

| drink | varchar |

±------------±--------+

id 是该表的主键(具有唯一值的列)。

该表中的每一行都显示了订单 id 和所点饮料的名称。一些饮料行为 null。

编写一个解决方案将 drink 的 null 值替换为前面最近一行不为 null 的 drink。保证表第一行的 drink 不为 null。

返回 与输入顺序相同的 结果表。

  • 测试用例

输入:

CoffeeShop 表:

±---±------------------+

| id | drink |

±---±------------------+

| 9 | Rum and Coke |

| 6 | null |

| 7 | null |

| 3 | St Germain Spritz |

| 1 | Orange Margarita |

| 2 | null |

±---±------------------+

AI写代码

sql

输出:

±---±------------------+

| id | drink |

±---±------------------+

| 9 | Rum and Coke |

| 6 | Rum and Coke |

| 7 | Rum and Coke |

| 3 | St Germain Spritz |

| 1 | Orange Margarita |

| 2 | Orange Margarita |

±---±------------------+

AI写代码

sql

解释:

对于 ID 6,之前不为空的值来自 ID 9。我们将 null 替换为 "Rum and Coke"。

对于 ID 7,之前不为空的值来自 ID 9。我们将 null 替换为 "Rum and Coke"。

对于 ID 2,之前不为空的值来自 ID 1。我们将 null 替换为 "Orange Margarita"。

请注意,输出中的行与输入中的行相同。


Solution

相关推荐
努力学算法的蒟蒻2 小时前
day63(1.22)——leetcode面试经典150
算法·leetcode·面试
消失的旧时光-19432 小时前
第六课 · 6.1 从 JDBC 到 MyBatis:SQL 工程化是如何发生的?
java·sql·mybatis
人道领域2 小时前
javaWeb从入门到进阶(MYSQL)
数据库·mysql·oracle
liux35282 小时前
MySQL读写分离全面解析:ProxySQL配置指南(十)
数据库·mysql
程序员-King.2 小时前
day161—动态规划—最长递增子序列(LeetCode-300)
算法·leetcode·深度优先·动态规划·递归
人工干智能2 小时前
LlamaIndex:使用向量数据库进行检索,loaded_query_engine.query(“..........?“)
数据库·llm
咸鱼翻身小阿橙2 小时前
SQL上半部分
服务器·数据库·sql
Elastic 中国社区官方博客2 小时前
Elasticsearch:监控 LLM 推理和 Agent Builder 使用 OpenRouter
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
知识分享小能手2 小时前
Oracle 19c入门学习教程,从入门到精通,Oracle 数据表对象 —— 语法知识点详解与案例实践(10)
数据库·学习·oracle
Gobysec2 小时前
Goby 漏洞安全通告|GNU InetUtils Telnetd USER环境变量注入 权限绕过漏洞(CVE-2026-24061)
数据库·安全·gnu·漏洞分析·漏洞预警