我有一张这样的 table :
| name | salary | day | month |
| james | 200.00 | 2 | january |
| marie | 400.00 | 4 | january |
| jimmy | 300.00 | 7 | january |
| Fredd | 700.00 | 3 | february |
| rosieli | 500.00 | 5 | february |
| rosela | 800.00 | 6 | february |
如果表名为“db_table”,我该如何编写一个 sql 选择查询来选择从 1 月 4 日到 2 月 5 日的记录。
像这样的东西:
select * from db_table between day='4',month='january' and day='5' and month='february'";
请问我如何编写正确的 sql 语句来获得所需的结果。以便表看起来像这样:
| name | salary | day | month |
| marie | 400.00 | 4 | january |
| jimmy | 300.00 | 7 | january |
| Fredd | 700.00 | 3 | february |
| rosieli | 500.00 | 5 | february |
谢谢
最佳答案
您需要将日期设为数字,仅此而已:
SELECT *
FROM db_table
WHERE (day >= 4 and month = 'January')
OR (day <= 5 and month = 'February')
例如一月到四月:
SELECT *
FROM db_table
WHERE (day >= 4 and month = 'January')
OR (day <= 5 and month = 'April')
OR month IN ('February','March')
关于mysql - 多sql select语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54605524/