mysql查询:查询显示从第二行到最后一行的数据

1wnzp6jl  于 2021-06-21  发布在  Mysql
关注(0)|答案(4)|浏览(291)

我想问一下如何显示从第二行到最后一行的数据?

+----+------------------+-------+
| id |   nama_makanan   | harga |
+----+------------------+-------+
|  1 | Ayam Katsu       | 18000 |
|  2 | Udon Daging Sapi | 26000 |
|  3 | Mie Ramen Gila   | 24000 |
|  4 | Cah Kangkung     | 16000 |
|  5 | Sayur Nangka     | 10000 |
+----+------------------+-------+

例如,如果使用这样的限制:

SELECT * FROM tbl_makanan ORDER BY id ASC LIMIT 1,4

结果:

+----+------------------+-------+
| id |   nama_makanan   | harga |
+----+------------------+-------+
|  2 | Udon Daging Sapi | 26000 |
|  3 | Mie Ramen Gila   | 24000 |
|  4 | Cah Kangkung     | 16000 |
|  5 | Sayur Nangka     | 10000 |
+----+------------------+-------+

但这是静态的,如果数据非常多地在表中呢?如何获取第二个数据直到最后一个数据?

ufj5ltwl

ufj5ltwl1#

希望这对你有用……)

SELECT *
FROM tbl_makanan
ORDER BY id ASC 
OFFSET 1 ROWS
ujv3wf0j

ujv3wf0j2#

只需使用非常大的值“4”。这将适用于大多数表:

SELECT *
FROM tbl_makanan
ORDER BY id ASC
LIMIT 1, 999999999;
ffx8fchx

ffx8fchx3#

另一种方法是使用left join获得所需的结果

SELECT a.* 
FROM tbl_makanan a
LEFT JOIN (
    SELECT id
    FROM tbl_makanan
    ORDER BY id ASC 
    LIMIT 1
) b USING (id)
WHERE b.id IS NULL

演示

cqoc49vn

cqoc49vn4#

你可以用这个(这是一把工作小提琴):

SELECT id, nama_makanan, harga FROM tbl_makanan WHERE id < (SELECT MAX(`id`) FROM tbl_makanan) ORDER BY id DESC LIMIT 1

相关问题