我使用字符串来存储星期几,如下所示:MTWTFSS。如果我搜索 MF(星期一和星期五),则查询必须返回所有包含 MF 的字符串(例如:MWF、MTWTFS、MF 等)。
我不知道如何在 SQL (MySQL) 中执行此操作。
我使用字符串来存储星期几,如下所示:MTWTFSS。如果我搜索 MF(星期一和星期五),则查询必须返回所有包含 MF 的字符串(例如:MWF、MTWTFS、MF 等)。
我不知道如何在 SQL (MySQL) 中执行此操作。
LIKE
在单个字符之间使用%
-wildcard:
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];
你能不能只说
SELECT * FROM blah WHERE weekday LIKE "%MF%"