You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Presto是否有starts_with类似函数?PostgreSQL写法等效转换

Presto中筛选字符串以指定子串开头的等效写法

你可以用以下几种方式实现和PostgreSQL中name~'^Joh'相同的逻辑:

  • 使用starts_with()函数(最直观的方案)
    这正是你要找的类似starts_with的专用函数,写法简洁语义明确:

    SELECT * FROM tableA WHERE starts_with(name, 'Joh');
    
  • 使用正则表达式匹配(和PostgreSQL写法逻辑一致)
    Presto提供regexp_like()函数支持正则匹配,和你熟悉的~操作符效果相同:

    SELECT * FROM tableA WHERE regexp_like(name, '^Joh');
    
  • 使用substr()截取对比(适合固定长度前缀场景)
    截取字符串的前N个字符(这里N是目标子串的长度3)再做等值对比:

    SELECT * FROM tableA WHERE substr(name, 1, 3) = 'Joh';
    

内容的提问来源于stack exchange,提问作者sagar_c_k

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.23 02:15:37