繁体   English   中英

如何检查一个记录中的一组值中是否存在一个值

[英]How to check whether a value exists among a set of values in a record in mysql

我使用MySQL的方式是用户输入日期并在当天显示航班。我懒得输入很多日期,所以我所做的是使某些航班在某些日子运行。

表平面包含许多列,其中dtd(列包含许多天,类型为varchar(50))。

一条记录(在dtd中)是星期一,星期二用户输入日期为2018-12-03的星期一。

我的问题是如何仅提取星期一的记录?(例如星期一,星期二)?

我尝试选择..... where instr(day(2018-12-03),dtd)<> 0但我意识到instr在2种情况下给出0 1.字符不在记录中或2 .occurence是开始。

像instr(h,hello)和instr(a,hello)给出0。

请帮忙

我建议您使用LIKE运算符。
有关它的更多信息,请检查此链接: SQL Like运算符
要解决您的问题,您可以尝试以下操作:

SELECT ...
  WHERE dtd LIKE CONCAT('%', day(2018-12-03), '%');

在这种情况下,您将获得表的所有行,其中字段dtd的值包含day(2018-12-03)的值。
希望这可以帮助!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM