gpt4 book ai didi

sql - 根据匹配的位置对通配符搜索的结果进行排序

转载 作者:行者123 更新时间:2023-11-29 14:35:40 25 4
gpt4 key购买 nike

我想根据在字符串中的位置对文本搜索进行排序。在字符串开头找到的那些匹配项首先出现,依此类推。如果我的描述不清楚,也许我到目前为止所做的尝试会有所帮助。

    Select "BANK", "ACH" from "FI" where "ACH" like '1119%'
Union All
Select "BANK", "ACH" from "FI" where "ACH" like '%1119%'

这是迄今为止我能想到的最好的。我的直觉告诉我它可能效率不高,而且它确实没有像我想象的那样解决问题。

最佳答案

你可以这样做:

Select "BANK", "ACH"
from "FI"
where "ACH" like '%1119%'
order by (case when "ACH" like '1119%' then 1 else 2 end);

或者,这是另一种更简单的方法:

order by position('1119' in "ACH")

这按您要搜索的字符串的位置排序。

关于sql - 根据匹配的位置对通配符搜索的结果进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45124259/

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