Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有 mysql 表值,例如
1-2 1-2-3 1-4-5 1-4-5-12-15 15-45-75 1-5-15-25-35-55 55-65-75
我想选择哪些行的编号为 5(不是 15 或 25 或 35)。
我尝试过使用 LIKE 查询,但它给出的所有 5 个值都包含行(包括 15、35、45、55)。
SELECT ... WHERE linkage LIKE '%5%'
我认为我们可以通过 REGEXP 做到这一点。你能帮我吗?
您可以使用FIND_IN_SET执行此操作:
SELECT ... WHERE FIND_IN_SET(5, REPLACE(linkage,'-',','));
尝试
SELECT ... WHERE concat('-',linkage,'-') LIKE '%-5-%'