Objective and Introduction
Objective: This segment introduces how to use the LIMIT clause and retrieve the first and last three records by using it.
Introduction: The LIMIT clause returns the number of rows based on arguments provided. It accepts one or two arguments, which must be zero or a positive integer. The following syntax and queries will help you to understand practically.
Retrieving the existing databases and table records
mysql> SHOW DATABASES; +--------------------+ | Database | +--------------------+ | DB | | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 5 rows in set (0.00 sec) mysql> USE DB; Database changed mysql> SHOW TABLES; +--------------+ | Tables_in_DB | +--------------+ | holders | +--------------+ 1 row in set (0.01 sec) mysql> SELECT * FROM holders; +-------------+---------------+---------+------------+----------+--------+ | account_no | name | city | dob | bank | amount | +-------------+---------------+---------+------------+----------+--------+ | 25622348989 | James Moore | Phoenix | 1985-05-26 | Barclays | 5000 | | 25622348990 | Donald Taylor | Irvine | 1990-08-20 | Citi | 7000 | | 25622348991 | Edward Parkar | Irvine | 1994-01-29 | ICICI | 95000 | | 25622348992 | Ryan Bakshi | Mumbai | 1982-01-14 | Citi | 50000 | | 25622348993 | Marie Peters | Ribe | 1967-01-05 | DZBank | 12250 | | 25622348994 | Aanya | Delhi | 1975-08-18 | SBI | 105000 | | 25622348995 | James Moore | NULL | 1978-06-26 | Citi | 97800 | +-------------+---------------+---------+------------+----------+--------+ 7 rows in set (0.00 sec)
Using LIMIT clause
mysql> SELECT * FROM holders LIMIT 3; +-------------+---------------+---------+------------+----------+--------+ | account_no | name | city | dob | bank | amount | +-------------+---------------+---------+------------+----------+--------+ | 25622348989 | James Moore | Phoenix | 1985-05-26 | Barclays | 5000 | | 25622348990 | Donald Taylor | Irvine | 1990-08-20 | Citi | 7000 | | 25622348991 | Edward Parkar | Irvine | 1994-01-29 | ICICI | 95000 | +-------------+---------------+---------+------------+----------+--------+ 3 rows in set (0.00 sec) mysql> SELECT * FROM holders ORDER BY dob LIMIT 3; +-------------+--------------+-------+------------+--------+--------+ | account_no | name | city | dob | bank | amount | +-------------+--------------+-------+------------+--------+--------+ | 25622348993 | Marie Peters | Ribe | 1967-01-05 | DZBank | 12250 | | 25622348994 | Aanya | Delhi | 1975-08-18 | SBI | 105000 | | 25622348995 | James Moore | NULL | 1978-06-26 | Citi | 97800 | +-------------+--------------+-------+------------+--------+--------+ 3 rows in set (0.00 sec)
Retrieving first and last three records
mysql> SELECT * FROM holders ORDER BY bank,amount; +-------------+---------------+---------+------------+----------+--------+ | account_no | name | city | dob | bank | amount | +-------------+---------------+---------+------------+----------+--------+ | 25622348989 | James Moore | Phoenix | 1985-05-26 | Barclays | 5000 | | 25622348990 | Donald Taylor | Irvine | 1990-08-20 | Citi | 7000 | | 25622348992 | Ryan Bakshi | Mumbai | 1982-01-14 | Citi | 50000 | | 25622348995 | James Moore | NULL | 1978-06-26 | Citi | 97800 | | 25622348993 | Marie Peters | Ribe | 1967-01-05 | DZBank | 12250 | | 25622348991 | Edward Parkar | Irvine | 1994-01-29 | ICICI | 95000 | | 25622348994 | Aanya | Delhi | 1975-08-18 | SBI | 105000 | +-------------+---------------+---------+------------+----------+--------+ 7 rows in set (0.00 sec) mysql> SELECT * FROM holders ORDER BY bank,amount LIMIT 3; +-------------+---------------+---------+------------+----------+--------+ | account_no | name | city | dob | bank | amount | +-------------+---------------+---------+------------+----------+--------+ | 25622348989 | James Moore | Phoenix | 1985-05-26 | Barclays | 5000 | | 25622348990 | Donald Taylor | Irvine | 1990-08-20 | Citi | 7000 | | 25622348992 | Ryan Bakshi | Mumbai | 1982-01-14 | Citi | 50000 | +-------------+---------------+---------+------------+----------+--------+ 3 rows in set (0.01 sec) mysql> SELECT * FROM holders ORDER BY account_no DESC LIMIT 3; +-------------+--------------+-------+------------+--------+--------+ | account_no | name | city | dob | bank | amount | +-------------+--------------+-------+------------+--------+--------+ | 25622348995 | James Moore | NULL | 1978-06-26 | Citi | 97800 | | 25622348994 | Aanya | Delhi | 1975-08-18 | SBI | 105000 | | 25622348993 | Marie Peters | Ribe | 1967-01-05 | DZBank | 12250 | +-------------+--------------+-------+------------+--------+--------+ 3 rows in set (0.01 sec)
Advertisement