gpt4 book ai didi

使用 [charlist] 通配符的 mysql 语句

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

尝试使用此sql语句。前两个部分工作正常,我正在尝试在公司字符列表中,以便其拉动的字符串不能包含其中的任何字母

SELECT * FROM table WHERE LENGTH(RTRIM(word)) = 8 AND word LIKE 'a__c____' AND word LIKE '%[!tesp]%' GROUP BY word

基本上,我希望这个语句能够提取出一个词:

  • 长度为 8 个字母
  • 以“a”开头,第四个字母是“c”
  • 其中不包含“t”“e”“s”“p”

最佳答案

使用REGEXP (或其同义词RLIKE)运算符。

SELECT *
FROM table
WHERE word RLIKE '^a[^tesp]{2}c[^tesp]{4} *$'
GROUP BY word;

[^tesp]{2} 表示“匹配 2 个非 t、e、s 或 p 的字符”。

请注意,8 个字母是由正则表达式强制执行的。此外,它还通过正则表达式末尾的 *$ 处理 RTRIM(允许末尾有任意数量的空格)。

这样您只需对每个单词执行一次而不是三次(一次针对 LENGTH,一次针对 LIKE 'a__c____',一次针对“t”,” e","s","p")。

关于使用 [charlist] 通配符的 mysql 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8937050/

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