Beachten Sie, dass für SETentweder =oder :=als Zuweisungsoperator verwendet werden kann. In anderen Anweisungen muss der Zuweisungsoperator jedoch sein :=und nicht, =da er =in Nicht-SET-Anweisungen als Vergleichsoperator behandelt wird.
AKTUALISIEREN:
Neben den Kommentaren unten können Sie auch Folgendes tun:
@ DanielVassallo vielen Dank. Die Aussage "INTO" ist sehr hilfreich. Ich wollte mysql var von select einstellen, ohne die select zurückzugeben. VIELEN DANK!
Luis Antonio Pestana
68
Fügen Sie einfach eine Klammer um die Abfrage hinzu:
Dies führt Subquery returns more than 1 rowfür mich
Timbroder
1
@timbroder Fügen Sie der Abfrage einfach LIMIT 1 hinzu. Wie auch immer, ich schlug eine Bearbeitung vor, um das zu korrigieren.
Youkko
11
Schauen wir uns zunächst an, wie wir eine Variable in MySQL definieren können
Um eine Variable in MySQL zu definieren, sollte sie mit '@' wie @ {Variablenname} und diesem '{Variablenname}' beginnen. Wir können sie durch unseren Variablennamen ersetzen.
Nun, wie man einen Wert in einer Variablen in MySQL zuweist. Dafür haben wir viele Möglichkeiten, das zu tun
Verwenden Sie das Schlüsselwort 'SET'.
Beispiel: - mysql> SET @a = 1;
Ohne das Schlüsselwort 'SET' und ': =' zu verwenden.
Beispiel: - mysql> @a: = 1;
Mit der Anweisung 'SELECT'.
Beispiel: - mysql> wähle 1 in @a;
Hier ist @a eine benutzerdefinierte Variable und 1 wird in @a zugewiesen.
Nun, wie man den Wert von @ {Variablenname} erhält oder auswählt.
Wir können select-Anweisungen wie verwenden
Beispiel: -
mysql> wähle @a;
Es wird die Ausgabe und der Wert von @a angezeigt.
Nun, wie man einen Wert aus einer Tabelle in einer Variablen zuweist.
Hierfür können wir zwei Aussagen verwenden wie: -
@a: = (Wählen Sie emp_name vom Mitarbeiter aus, wobei emp_id = 1 ist);
Wählen Sie emp_name in @a von Mitarbeiter aus, wobei emp_id = 1;
Seien Sie immer vorsichtig, emp_name muss einen einzelnen Wert zurückgeben, da sonst ein Fehler in diesen Typanweisungen auftritt.
select grop into @group from user limit 1
.Fügen Sie einfach eine Klammer um die Abfrage hinzu:
quelle
Subquery returns more than 1 row
für michSchauen wir uns zunächst an, wie wir eine Variable in MySQL definieren können
Um eine Variable in MySQL zu definieren, sollte sie mit '@' wie @ {Variablenname} und diesem '{Variablenname}' beginnen. Wir können sie durch unseren Variablennamen ersetzen.
Nun, wie man einen Wert in einer Variablen in MySQL zuweist. Dafür haben wir viele Möglichkeiten, das zu tun
Beispiel: - mysql> SET @a = 1;
Beispiel: - mysql> @a: = 1;
Beispiel: - mysql> wähle 1 in @a;
Hier ist @a eine benutzerdefinierte Variable und 1 wird in @a zugewiesen.
Nun, wie man den Wert von @ {Variablenname} erhält oder auswählt.
Wir können select-Anweisungen wie verwenden
Beispiel: -
mysql> wähle @a;
Es wird die Ausgabe und der Wert von @a angezeigt.
Nun, wie man einen Wert aus einer Tabelle in einer Variablen zuweist.
Hierfür können wir zwei Aussagen verwenden wie: -
@a: = (Wählen Sie emp_name vom Mitarbeiter aus, wobei emp_id = 1 ist);
Wählen Sie emp_name in @a von Mitarbeiter aus, wobei emp_id = 1;
Seien Sie immer vorsichtig, emp_name muss einen einzelnen Wert zurückgeben, da sonst ein Fehler in diesen Typanweisungen auftritt.
Verweisen Sie darauf: - http://www.easysolutionweb.com/sql-pl-sql/how-to-assign-a-value-in-a-variable-in-mysql
quelle
Verwenden Sie diese Methode, damit das Ergebnis beim Ausführen der gespeicherten Prozedur nicht angezeigt wird.
Die Abfrage:
quelle