В этом учебном пособии вы узнаете, как использовать MariaDB оператор SELECT в MariaDB с синтаксисом и примерами.
Описание
MariaDB оператор SELECT используется для извлечения записей из одной или нескольких таблиц в MariaDB.
Синтаксис
В своей простейшей форме синтаксис для оператора SELECT в MariaDB:
FROM tables
[WHERE conditions];
Тем не менее, полный синтаксис для оператора MariaDB SELECT:
expressions
FROM tables
[WHERE conditions]
[GROUP BY expressions]
[HAVING condition]
[ ORDER BY expression [ ASC | DESC ]]
[LIMIT [offset_value] number_rows | LIMIT number_rows OFFSET offset_value]
[PROCEDURE procedure_name]
[INTO [ OUTFILE 'file_name' options
| DUMPFILE 'file_name'
| @variable1, @variable2, .. @variable_n ]
[FOR UPDATE | LOCK IN SHARE MODE];
Параметры или аргументы
- ALL
- Необязательный. ALL возвращает все соответствующие строки.
- DISTINCT
- Необязательный. DISTINCT удаляет дубликаты из набора результатов.
- expressions
- Столбцы или расчеты, которые вы хотите получить. Используйте *, если хотите выбрать все столбцы.
- tables
- Таблицы, из которых вы хотите получить записи. В предложении FROM должна быть указана хотя бы одна таблица.
- WHERE conditions
- Необязательный. Условия, которые должны быть выполнены для записей, которые будут выбраны.
- GROUP BY expressions
- Необязательный. Он собирает данные по нескольким записям и группирует результаты по одному или нескольким столбцам.
- HAVING condition
- Необязательный. Он используется в сочетании с GROUP BY, чтобы ограничить группы возвращаемых строк только теми, чье условие TRUE.
- ORDER BY expression
- Необязательный. Он используется для сортировки записей в вашем наборе результатов.
- LIMIT
- Необязательный. Если указан LIMIT, он контролирует максимальное количество записей для извлечения. Максимум, количество записей, указанное number_rows, будет возвращено в наборе результатов. Первая строка, возвращаемая LIMIT, будет определена offset_value.
- PROCEDURE
- Необязательный. Если указано, procedure_name - это имя процедуры, которая должна обрабатывать данные в наборе результатов.
- INTO
- Необязательный. Если он указан, он позволяет записать набор результатов в файл или переменную.
Значение Пояснение INTO OUTFILE 'filename' options Записывает набор результатов в файл с именем filename на хосте сервера. Для options вы можете указать:
FIELDS ESCAPED BY 'character'
FIELDS TERMINATED BY 'character' [ OPTIONALLY ENCLOSED BY 'character' ]
LINES TERMINATED BY 'character'
где character - это символ, отображаемый как символ ESCAPE, ENCLOSED или TERMINATED. Например:
SELECT supplier_id, supplier_name
FROM suppliers
INTO OUTFILE 'results.txt'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n';INTO DUMPFILE 'filename' Записывает одну строку набора результатов в файл с именем filename на хосте сервера. При использовании этого метода нет завершения столбца, завершения строки или escape-обработки. INTO @variable1, @variable2, .. @variable_n Записывает набор результатов в одну или несколько переменных, как указано @variable1, @variable2, .. @variable_n Пример выбрать все столбцы из одной таблицы
Давайте посмотрим, как использовать MariaDB запрос SELECT для выбора всех столбцов таблицы.
Например:1234SELECT *FROM sitesWHERE site_name = 'Google.com'ORDER BY site_id ASC;В этом примере SELECT мы использовали *, чтобы указать, что мы хотим выбрать все поля из таблицы sites, где site_name - "Google.com". Результаты сортируются по site_id в порядке возрастания.
Пример выбор отдельных столбцов из одной таблицы
При использовании оператора SELECT в MariaDB вам не нужно выбирать все столбцы из таблицы. Вместо этого вы можете выбрать отдельные столбцы, которые вы хотели бы вернуть в своем наборе результатов.
Например:1234SELECT site_id, site_nameFROM sitesWHERE site_id < 32ORDER BY site_id ASC, site_name DESC;В этом MariaDB примере SELECT будут возвращены только поля site_id и site_name из таблицы sites, где site_id меньше 32. Результаты сортируются по site_id в порядке возрастания, а затем site_name в порядке убывания.
Пример выбор столбцов из нескольких таблиц
Оператор SELECT в MariaDB также может выбирать столбцы из нескольких таблиц.
Например:123456SELECT pages.page_id, sites.site_nameFROM sitesINNER JOIN pagesON sites.site_id = pages.site_idWHERE sites.site_name = 'Google.com'ORDER BY pages.page_id;Этот пример оператора SELECT объединяет две таблицы, чтобы вернуть результирующий набор, который включает поля page_id и site_name. Результаты оператора SELECT фильтруются, когда site_name равно "Google.com", а значение site_id совпадает как в sites, так и в таблице pages. Результаты сортируются по page_id в порядке возрастания.
Пример запись в файл
Наконец, давайте посмотрим, как использовать MariaDB оператор SELECT для записи результатов оператора SELECT в файл.
Например:1234567SELECT site_id, site_nameFROM sitesWHERE site_name = 'Google.com'ORDER BY site_id DESCINTO OUTFILE 'results.txt'FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'LINES TERMINATED BY '\n';В этом MariaDB примере SELECT будут возвращены только поля site_id и site_name из таблицы sites, где site_name равно 'Google.com'. Результаты будут отсортированы по site_id в порядке убывания и записаны в файл results.txt.