Полный цикл в digital

Пользовательские переменные

Иногда вы хотите передать значение из оператора SQL в другой оператор SQL. Для этого вы сохраняете значение в пользовательской переменной MySQL в первом операторе и ссылаетесь на него в последующих инструкциях.

Для создания пользовательской переменной вы используете формат @variable_name, в котором variable_name состоит из буквенно-цифровых символов. Максимальная длина пользовательской переменной составляет 64 символа с MySQL 5.7.5

Пользовательские переменные не чувствительны к регистру. Это означает, что @id и @ID то же самое.

Вы можете назначить пользовательскую переменную определенным типам данных, таким как целое число, число с плавающей запятой, десятичное число, строка, NULL.

Пользовательская переменная, определенная одним клиентом, не видна другим клиентам. Другими словами, пользовательская переменная является специфичной для сессии.

Обратите внимание, что пользовательские переменные являются специфичным для MySQL расширением стандарта SQL. Они могут быть недоступны в других системах баз данных.

Переменная MySQL

Есть два способа присвоить значение пользовательской переменной.

Первый способ заключается в следующем:

mysql>SET @variable_name := value;

Вы можете использовать либо :=, либо = как оператор присваивания в операторе SET. Например, оператор присваивает число 100 переменной @counter:

mysql>SET @counter = 100;

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

mysql>SELECT @variable_name := value;

После назначения вы можете использовать переменную в последующем операторе, где выражение разрешено: WHERE, INSERT, UPDATE.

Примеры переменных

Следующий оператор получает самый дорогой продукт в таблице products и назначает цену пользовательской переменной @msrp:

mysql>SELECT
    @msrp:=MAX(msrp)
FROM
    products;

Следующий оператор использует переменную @msrp для запроса информации о самом дорогом продукте:

mysql>SELECT
    productCode, productName, productLine, msrp
FROM
    products
WHERE
    msrp = @msrp;
Заполните форму уже сегодня!
Для начала сотрудничества необходимо заполнить заявку или заказать обратный звонок. В ответ получите коммерческое предложение, которое будет содержать индивидуальную стратегию с учетом требований и поставленных задач
Работаем по будням с 9:00 до 18:00. Заявки, отправленные в выходные, обрабатываем в первый рабочий день до 12:00.
Спасибо, ваш запрос принят и будет обработан!
Эйч Маркетинг