В MySQL, TABLE
оператор връща редове и колони от дадената таблица.
TABLE
операторът е подобен на SELECT
оператор и може да се използва като вид съкратена версия на SELECT
изявление.
TABLE
операторът беше въведен в MySQL 8.0.19.
Синтаксис
Синтаксисът е така:
TABLE table_name [ORDER BY column_name] [LIMIT number [OFFSET number]]
Пример
Ето пример за демонстрация:
TABLE Genres;
Резултат:
+---------+---------+ | GenreId | Genre | +---------+---------+ | 1 | Rock | | 2 | Jazz | | 3 | Country | | 4 | Pop | | 5 | Blues | | 6 | Hip Hop | | 7 | Rap | | 8 | Punk | +---------+---------+
Това е еквивалентно на извършване на следното:
SELECT * FROM Genres;
Резултат:
+---------+---------+ | GenreId | Genre | +---------+---------+ | 1 | Rock | | 2 | Jazz | | 3 | Country | | 4 | Pop | | 5 | Blues | | 6 | Hip Hop | | 7 | Rap | | 8 | Punk | +---------+---------+
Поръчка
Можете да използвате ORDER BY
клауза за подреждане на редовете, върнати от TABLE
изявление:
TABLE Genres
ORDER BY Genre ASC;
Резултат:
+---------+---------+ | GenreId | Genre | +---------+---------+ | 5 | Blues | | 3 | Country | | 6 | Hip Hop | | 2 | Jazz | | 4 | Pop | | 8 | Punk | | 7 | Rap | | 1 | Rock | +---------+---------+
LIMIT
Клауза
Можете също да ограничите редовете, връщани от TABLE
израз с помощта на LIMIT
клауза:
TABLE Genres
LIMIT 5;
Резултат:
+---------+---------+ | GenreId | Genre | +---------+---------+ | 1 | Rock | | 2 | Jazz | | 3 | Country | | 4 | Pop | | 5 | Blues | +---------+---------+
Можете да използвате OFFSET
за да посочите отместване за ограничените резултати:
TABLE Genres
LIMIT 5 OFFSET 3;
Резултат:
+---------+---------+ | GenreId | Genre | +---------+---------+ | 4 | Pop | | 5 | Blues | | 6 | Hip Hop | | 7 | Rap | | 8 | Punk | +---------+---------+
И можете да използвате ORDER BY
и LIMIT
заедно:
TABLE Genres
ORDER BY Genre ASC
LIMIT 5;
Резултат:
+---------+---------+ | GenreId | Genre | +---------+---------+ | 5 | Blues | | 3 | Country | | 6 | Hip Hop | | 2 | Jazz | | 4 | Pop | +---------+---------+
Разлики между TABLE
и SELECT
Въпреки че TABLE
и SELECT
твърденията са сходни, има някои разлики. Ето основните разлики между TABLE
и SELECT
:
TABLE
операторът винаги показва всички колони на таблицата (не можете изрично да изберете определени колони).TABLE
операторът не позволява произволно филтриране на редове. С други думи,TABLE
не поддържа никаквиWHERE
клауза.
Вижте документацията на MySQL за повече информация.