1
0
mirror of https://github.com/MariaDB/server.git synced 2026-01-06 05:22:24 +03:00
Files
mariadb/sql
Vicențiu Ciorbaru 299b935320 MDEV-23908: Implement SELECT ... OFFSET ... FETCH ...
This commit implements the standard SQL extension
OFFSET start { ROW | ROWS }
[FETCH { FIRST | NEXT } [ count ] { ROW | ROWS } { ONLY | WITH TIES }]

To achieve this a reserved keyword OFFSET is introduced.

The general logic for WITH TIES implies:
1. The number of rows a query returns is no longer known during optimize
   phase. Adjust optimizations to no longer consider this.
2. During end_send make use of an "order Cached_item"to compare if the
   ORDER BY columns changed. Keep returning rows until there is a
   change. This happens only after we reached the row limit.
3. Within end_send_group, the order by clause was eliminated. It is
   still possible to keep the optimization of using end_send_group for
   producing the final result set.
2021-04-21 14:09:14 +03:00
..
2020-10-22 17:08:49 +03:00
2020-08-03 14:44:06 +02:00
2021-04-20 12:30:09 +03:00
2021-03-12 07:02:29 +11:00
2021-04-21 10:21:47 +04:00
2020-09-04 18:44:44 +03:00
2020-06-10 07:43:18 +03:00
2020-08-04 17:24:15 +02:00
2020-08-03 14:44:06 +02:00
2020-08-04 17:24:15 +02:00
2021-04-21 09:01:01 +03:00
2020-08-03 14:44:06 +02:00
2021-04-21 11:45:00 +03:00
2020-07-15 14:51:22 +03:00
2020-08-03 13:41:29 +02:00
2021-04-20 12:30:09 +03:00
2021-04-20 12:30:09 +03:00
2021-04-21 09:01:01 +03:00
2021-04-14 11:35:39 +03:00
2021-04-21 11:45:00 +03:00
2020-11-26 19:13:37 +02:00
2021-03-31 11:05:21 +03:00
2021-04-21 11:45:00 +03:00
2021-04-21 11:45:00 +03:00
2021-04-21 09:01:01 +03:00
2021-04-14 11:35:39 +03:00
2021-04-21 09:01:01 +03:00
2021-04-21 09:01:01 +03:00
2020-10-30 11:15:30 +02:00
2020-08-01 14:42:51 +03:00
2020-08-04 17:24:15 +02:00
2021-04-21 11:45:00 +03:00
2021-04-21 10:21:48 +04:00
2020-11-03 16:24:47 +02:00
2021-01-11 16:29:51 +02:00
2020-09-04 18:44:44 +03:00
2021-03-26 11:50:32 +02:00
2020-10-21 03:09:29 +03:00
2021-04-21 11:45:00 +03:00
2020-11-13 21:54:21 +02:00
2021-03-11 20:09:34 +02:00
2021-03-11 20:09:34 +02:00
2020-11-02 15:48:47 +02:00
2021-04-21 07:25:48 +03:00
2020-11-03 14:49:17 +02:00
2021-02-11 09:26:53 +02:00
2020-05-30 11:04:27 +03:00
2021-04-14 12:32:27 +03:00
2021-04-21 11:45:00 +03:00
2021-03-20 13:04:36 +02:00
2021-02-17 19:39:05 +02:00
2020-08-12 14:39:53 +03:00
2021-04-21 10:21:46 +04:00
2020-09-03 09:26:54 +03:00
2020-12-02 18:29:49 +02:00
2020-12-02 18:29:49 +02:00
2021-04-21 09:01:01 +03:00
2021-04-21 10:21:46 +04:00
2020-06-03 09:45:39 +03:00
2021-04-21 09:01:01 +03:00
2021-04-21 10:21:46 +04:00
2020-05-23 12:29:10 +03:00
2021-04-14 11:35:39 +03:00
2021-03-31 11:05:21 +03:00
2021-04-21 11:45:00 +03:00
2021-04-08 10:11:36 +03:00
2021-04-08 10:11:36 +03:00
2021-04-21 11:45:00 +03:00
2021-01-06 10:53:00 +01:00
2021-04-21 11:45:00 +03:00
2021-04-21 11:45:00 +03:00
2021-03-19 13:09:21 +02:00
2021-01-07 09:08:09 +02:00
2021-03-27 18:03:03 +02:00
2021-03-27 17:37:42 +02:00
2021-03-18 12:34:48 +02:00
2021-04-21 10:21:46 +04:00
2021-04-21 09:01:01 +03:00
2021-03-19 13:09:21 +02:00
2021-04-21 10:21:46 +04:00
2021-04-21 09:01:01 +03:00
2021-01-26 14:02:24 +02:00
2020-08-04 17:24:15 +02:00
2021-04-21 09:01:01 +03:00
2021-04-20 12:30:09 +03:00
2021-04-21 11:45:00 +03:00
2020-11-02 12:49:19 +02:00
2021-02-23 09:25:57 +01:00
2020-11-03 16:24:47 +02:00
2021-04-21 11:45:00 +03:00
2021-04-08 08:08:53 +03:00
2021-04-21 11:45:00 +03:00
2020-08-13 18:18:25 +03:00
2020-07-31 18:09:08 +03:00
2021-03-05 16:05:47 +02:00
2021-04-21 09:01:01 +03:00
2021-04-08 08:08:53 +03:00
2021-04-08 08:08:53 +03:00
2020-10-22 17:08:49 +03:00
2020-10-22 13:27:18 +03:00
2021-04-14 11:35:39 +03:00
2020-07-15 14:51:22 +03:00
2021-04-21 09:01:01 +03:00
2021-04-21 11:45:00 +03:00
2020-11-03 14:49:17 +02:00
2021-04-21 10:21:46 +04:00
2021-04-21 10:21:43 +04:00
2021-04-21 09:01:01 +03:00
2020-12-02 18:29:49 +02:00
2020-06-14 10:13:53 +03:00
2020-06-14 10:13:53 +03:00
2020-08-04 07:55:16 +03:00
2020-12-01 14:55:46 +02:00
2020-11-11 07:37:05 +02:00
2021-01-08 08:44:18 +02:00
2021-03-19 13:09:21 +02:00
2021-04-21 11:45:00 +03:00
2021-04-21 11:45:00 +03:00
2021-04-08 10:11:36 +03:00
2021-04-21 09:01:01 +03:00
2020-08-26 11:30:20 +03:00
2021-04-21 09:01:01 +03:00
2020-08-26 12:02:07 +03:00
2020-08-26 11:30:20 +03:00
2021-04-21 11:45:00 +03:00
2021-04-08 10:11:36 +03:00
2020-12-02 18:29:49 +02:00