gpt4 book ai didi

mysql 匹配字符串子集

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

带表:

idx | int | ident
1 | 10 | Foo 001_10
2 | 10 | Farfoo 002_11
3 | 11 | Sofoo 001_11
4 | 10 | Lafoo 001_10
5 | 10 | MoreFoo 001_11

如何选择字符串“ident”中最后 2 个字符与“int”列中的整数不匹配的所有行?对于上表来说是:

2   | 10  | Farfoo 002_11
5 | 10 | MoreFoo 001_11

最佳答案

您应该使用SUBSTRING函数,你会得到类似的东西

SELECT * FROM table WHERE SUBSTRING(ident, -2) != int

但我不确定这是否是实现您目标的最佳方式。对于 MySQL 来说,子字符串可能是一种非常昂贵的方法,也许其他人知道更快更好的方法。

这里有一个更好的方法,它允许您获取最后一个 _ 之后的所有内容,因为我不确定 _ 之后是否总是有两位数字。对于这种情况,我使用 SUBSTRING_INDEX .

SELECT * FROM 表 WHERE SUBSTRING_INDEX(ident, '_', -1) != int

关于mysql 匹配字符串子集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7304373/

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