我正在使用一个应用程序,通过刷卡,你可以看到一个接一个的卡。允许向左和向右滑动。如果用户向右滑动,他将看到下一张可用卡。如果他在左边刷卡,他会看到前一张卡。
卡的详细信息存储在MySQL表' cards‘中,并且具有唯一的id,假设'CardID’从数字1.000.000开始,依此类推。假设我目前在' cards‘表中添加了500张卡,所以最后存储的卡ID是1.000.500。我想创建一个程序,它将发送回用户的20张卡一次取决于他不断刷卡的方向。如果向左滑动,则该过程将发送前20条记录,依此类推。
现在,假设用户不断向左滑动,并请求数字1.000.009及以下的先前记录。我想要编写一条select语句,它将获取并服务于用户,将表的左侧9行和表底部的11行一起提供给用户。这将是CardID为1.000.489到1.000.500的记录,因此当用户滑动时,当他将滑动编号1.000.000 (第一个)时,他将循环查看1.000.500,反之亦然
提前谢谢你
发布于 2020-02-03 21:52:36
DROP TABLE IF EXISTS my_table;
CREATE TABLE my_table (id SERIAL PRIMARY KEY);
INSERT INTO my_table VALUES
(1),
(2),
(3),
(4),
(5),
(6),
(7),
(8),
(9);
SELECT * FROM my_table ORDER BY id > 5 DESC, id;
+----+
| id |
+----+
| 6 |
| 7 |
| 8 |
| 9 |
| 1 |
| 2 |
| 3 |
| 4 |
| 5 |
+----+https://stackoverflow.com/questions/60040212
复制相似问题