«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как я могу назначить пользовательские переменные из результатов запроса в MySQL без использования вложенных запросов?

Как я могу назначить пользовательские переменные из результатов запроса в MySQL без использования вложенных запросов?

Опубликовано 6 ноября 2024 г.
Просматривать:435

How Can I Assign User Variables from Query Results in MySQL without Using Nested Queries?

Назначение пользовательских переменных на основе результатов запроса в MySQL

Предпосылки и цели

Назначение пользовательских переменных на основе результатов запроса расширяет возможности манипулирования базой данных. В этой статье исследуется метод достижения этого в MySQL, не прибегая к вложенным запросам.

Синтаксис назначения пользовательских переменных

Вопреки распространенному мнению, назначение пользовательских переменных может быть интегрировано непосредственно в запросы. Оператором присваивания для операторов SET является = или :=. Однако := необходимо использовать внутри других операторов, поскольку = зарезервировано для сравнений.

Пример запроса

Чтобы проиллюстрировать этот метод, предположим, что USER и GROUP уникальны. Следующая последовательность запросов демонстрирует эту функциональность:

SET @user := 123456;
SELECT @group := `group` FROM USER WHERE user = @user;
SELECT * FROM USER WHERE `group` = @group;

Пример данных и результатов

Используя пример таблицы со следующими данными:

CREATE TABLE user (`user` int, `group` int);
INSERT INTO user VALUES (123456, 5);
INSERT INTO user VALUES (111111, 5);

Запрос дает следующий результат:

 -------- ------- 
| user   | group |
 -------- ------- 
| 123456 |     5 |
| 111111 |     5 |
 -------- ------- 

Альтернативный подход

В качестве альтернативы можно использовать следующий синтаксис:

SET @user := 123456;
SELECT `group` FROM user LIMIT 1 INTO @group;
SELECT * FROM user WHERE `group` = @group;
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3