我正在寻找类似这里的人正在寻找的东西,只是我想使用 MySQL。下表是您可以在我的数据库中找到的内容(简化版)。
+------+------+------+------+
| id | name | first| last |
+------+------+------+------+
| 1 | John | 1020 | 0814 |
| 2 | Ram | 0827 | 0420 |
| 3 | Jack | 0506 | 0120 |
| 4 | Jill | 0405 | 0220 |
| 5 | Zara | 1201 | 1219 |
+------+------+------+------+
首先,条目必须是随机的,而不是 id 4,我只想要 1 个条目。我解决了这个问题:SELECT * FROM test WHERE id <> 4 ORDER BY rand() LIMIT 1
。
在此表中,“first”和“last”列是格式为 mmdd(均为整数)的日期。所以约翰一年中的大部分时间都有空;从 10 月 20 日到 8 月 14 日。另一方面,Zara 只能在很短的时间内使用;12 月 1 日至 12 月 19 日。
我的问题:如何更改我的查询以仅选择可用的人员?我不能使用“between”,因为在 John 的情况下,1020 和 0814 之间没有任何内容。
我只是想不通,肯定有其他人有类似的问题......有人有解决方案吗?
亲切的问候