mysql - 使用开始和结束日期列过滤所有数据
问题描述
我应该如何过滤从开始到结束日期的所有数据?我有 2 列 - 一个用于开始日期,另一个用于结束列。
我想选择所有具有特定开始和结束日期的数据。
例如:
2018 年 8 月至 2018 年 9 月
数据:
这是我的查询:
SELECT * FROM project_monitoring pm INNER JOIN status s ON pm.status_ID = s.status_ID WHERE /*select all started from this date format MDY or MY or Y */ pm.proj_DateStarted = '2018-04-19' /*this end date format MDY or MY or Y */ pm.proj_DateEnded = '2018-03-08'
解决方案
如果我理解正确。
你可以尝试使用BETWEEN
SELECT * FROM project_monitoring pm
INNER JOIN status s ON pm.status_ID = s.status_ID
WHERE (pm.proj_DateStarted BETWEEN '2018-08-01' AND '2018-09-01')
OR (pm.proj_DateEnded BETWEEN '2018-08-01' AND '2018-09-01')
推荐阅读
- android - Jetpack Compose:在可滚动中使用 AndroidView 时,我看到了意外行为
- python - InvalidArgumentError:收到的标签值 5 超出了 [0, 5) 的有效范围。?
- javascript - 如何在 Firefox 中创建具有 12 小时时间格式的日期对象?
- graphql - 使用 ApolloClient 将变量传递给 GraphQL 突变似乎不起作用
- c# - 在 Web 表单中显示异常消息而无需转到 YSD
- php - 尝试使用 PHP 使用 mysqldump 备份 sql 文件
- c# - 使用 MongoDB C#/.NET 驱动程序为变音符号不敏感搜索设置排序规则
- kubernetes - 在 Ansible Tower 调查中使用变量进行作业调度 (AWX: 17.0.1 & Ansible: 2.9.17)
- python - FileNotFoundError:Heroku 无法读取存在并在本地运行的文件
- flutter - 没有显示 GridView。扑