ВЫБОР В
Синтаксис
SELECT col_name [, col_name] ...
INTO var_name [, var_name] ...
table_expr
Описание
SELECT ... INTO позволяет сохранять выбранные столбцы непосредственно в переменные. Результатов не генерируется. Запрос должен возвращать одну строку. Если запрос не возвращает строк, появляется предупреждение с кодом ошибки 1329 (Нет данных), и значения переменных остаются неизменными. Если запрос возвращает несколько строк, возникает ошибка 1172 (Результат состоит более чем из одной строки). Если возможно, что оператор может извлечь несколько строк, можно использовать LIMIT 1 для ограничения набора результатов одной строкой.
Оператор INTO также может быть указан в конце оператора.
В контексте таких операторов, которые выполняются как часть событий, выполняемых Планировщиком событий, сообщения об ошибках (не только ошибки, но и предупреждения) записываются в журнал ошибок и, в Windows, в журнал событий приложения.
Этот оператор можно использовать как с локальными переменными, так и с переменными, определёнными пользователем.
Полный синтаксис см. в SELECT.
Другой способ установить значение переменной — оператор SET.
Результаты не сохраняются в кэше запросов query cache, даже если SQL_CACHE указан.
Примеры
SELECT id, data INTO @x,@y FROM test.t1 LIMIT 1; SELECT * from t1 where t1.a=@x and t1.b=@y
Если вы хотите использовать этот конструкт с UNION , вам нужно использовать синтаксис:
SELECT * INTO @x FROM (SELECT t1.a FROM t1 UNION SELECT t2.a FROM t2);
См. также
- SELECT - полный синтаксис SELECT.
- SELECT INTO OUTFILE - форматирование и запись результата во внешний файл.
- SELECT INTO DUMPFILE - запись результатов в двоичном формате во внешний файл.
© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/selectinto/