我使用字符串存储一周中的日期,如下所示: MTWTFSS。如果我搜索MF(星期一和星期五),那么查询必须返回包含MF的所有字符串(例如:MWF,MTWTFS,MF等)。
我不知道如何在SQL(MySQL)中执行此操作。
答案 0 :(得分:7)
将LIKE
与%
一起使用 - 单个字符之间的通配符:
SELECT * FROM table WHERE column LIKE '%M%F%';
请注意,这仅适用于字符顺序正确的情况 - 搜索FM
代替MF
不会给您任何结果。
你还需要找到一种方法将%
s插入你的搜索词,但是这不应该是一个大问题(遗憾的是你没有说过你正在使用的编程语言)。
如果字符可以按随机顺序排列,则必须构建如下查询:
SELECT * FROM table WHERE
column LIKE '%M%'
AND
column LIKE '%F%'
[more ANDs per character];
答案 1 :(得分:2)
答案 2 :(得分:2)
你能不能只说
SELECT * FROM blah WHERE weekday LIKE "%MF%"