Pregunta

En un procedimiento almacenado, lo que quiero hacer un SELECT, y almacenar el valor de una columna en una variable.

¿Cómo se hace esto?

Quiero hacer algo como esto:

    DECLARE countTemp INT;
    SET countTemp=(SELECT COUNT(Name) FROM mytable WHERE Name= var_name LIMIT 0,1);

O, como este:

    DECLARE countTemp INT;
    SELECT countTemp=ColumnXYZ FROM mytable WHERE Name= var_name LIMIT 0,1;

Sin embargo, he intentado estos y MySQL dice mi sintaxis es incorrecta; ¿cómo puedo hacer algo como esto?

¿Fue útil?

Solución

De esta manera:

DECLARE myvar nvarchar(50);

SELECT ATextColumn INTO myvar FROM myTable LIMIT 1,1;

SELECT CONCAT('myvar is ',myvar ,' .');

http://www.java2s.com/Code/SQL /Procedure-Function/UseselectintotoassignvaluetoanIntegervariable.htm

Otros consejos

Puede configurar fácilmente la variable en la consulta de selección

SELECT @countTemp := ColumnXYZ FROM mytable WHERE Name= var_name LIMIT 0,1;

@countTemp es la variable!

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top