SQL之LIMIT子句踩坑记录

部分场景下,我们可能希望从一个大表 unparsed 中抽取前100行并对这些行应用UDF,一种容易想到的SQL语句如下:

sql 复制代码
@pyspark
insert into table parsed
select url, parse_func(content) as parsed_content from unparsed
limit 100;

但这个语句实际上会对 unparsed 中的所有行先应用UDF然后再抽取前100行,不符合我们的期望,为此可以作出如下修改

sql 复制代码
@pyspark
insert into table parsed
select url, parse_func(content) as parsed_content
from (
    select url, content from unparsed
    limit 100
);

注意,以下这种语句是无效的,速度并不会有任何改变:

sql 复制代码
@pyspark
insert into table parsed
(select url, parse_func(content) as parsed_content from unparsed limit 100);
相关推荐
做个文艺程序员5 小时前
深入 MySQL 内核:MVCC、Buffer Pool 与高并发场景下的极限调优
数据库·mysql·adb
杰克尼5 小时前
redis(day03-优惠券秒杀)
数据库·redis·缓存
七夜zippoe5 小时前
DolphinDB入门:时序数据库的正确打开方式
数据库·struts·时序数据库·工业互联网·dolphindb
数厘5 小时前
2.4MySQL安装配置指南(电商数据分析专用)
数据库·mysql·数据分析
一只小白0005 小时前
数据库对象实例化流程模板 + 常见错误
数据库
一江寒逸6 小时前
零基础从入门到精通MySQL(下篇):精通篇——吃透索引底层、锁机制与性能优化,成为MySQL实战高手
数据库·mysql·性能优化
DevOpenClub6 小时前
全国三甲医院主体信息 API 接口
java·大数据·数据库
一勺菠萝丶6 小时前
管理后台使用手册在线预览与首次登录引导弹窗实现
java·前端·数据库
无忧智库6 小时前
某大型银行“十五五”金融大模型风控与智能投顾平台建设方案深度解读(WORD)
数据库·金融
爱码小白6 小时前
数据库多表命名的通用规范
数据库·python·mysql