Mysql
 sql >> база данни >  >> RDS >> Mysql

Задайте резултата от променливата от заявка

Има няколко начина да направите това.

Можете да използвате подзаявка:

SET @some_var = (SELECT COUNT(*) FROM mytable);

(като вашия оригинал, просто добавете скоби около заявката)

или използвайте синтаксиса SELECT INTO, за да присвоите множество стойности:

SELECT COUNT(*), MAX(col)
INTO   @some_var, @some_other_var
FROM   tab;

Синтаксисът на подзаявката е малко по-бърз (не знам защо), но работи само за присвояване на една стойност. Синтаксисът select into ви позволява да зададете няколко стойности наведнъж, така че ако трябва да вземете няколко стойности от заявката, трябва да направите това, вместо да изпълнявате заявката отново и отново за всяка променлива.

И накрая, ако вашата заявка връща не един ред, а набор от резултати, можете да използвате курсор .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Масиви за мета заявки на WordPress

  2. PHP PDO програмиране на клас:Фатална грешка:Извикване на член функция fetchAll() на булева

  3. Как да направя заявка за полета, съдържащи даден текст в MySQL?

  4. Поле за дата и час на Django - преобразувайте в часова зона в изглед

  5. LOAD DATA LOCAL INFILE дава грешка. Използваната команда не е разрешена с тази версия на MySQL