GROUP_CONCAT kann mit der CASE-Anweisung mehrere Ausgaben erzeugen.
P粉652495194
2023-07-25 08:17:06
<p>Ich habe eine SQL-Abfrage, die die folgende Codezeile enthält: </p>
<pre class="brush:php;toolbar:false;">GROUP_CONCAT(CASE WHEN t3.ship=1 AND t4.item=0 THEN t2.item_name END ORDER BY item_id SEPARATOR '<br>') `Mein Artikelliste`</pre>
<p>Der aktuelle Ausgang ist: Lampe. Es funktioniert einwandfrei, aber ich möchte, dass die in der Spalte „item_no“ gespeicherte Artikelnummer in der Liste angezeigt wird. Die gewünschte Ausgabe ist: 1. Lampe. Ich habe erfolglos versucht, Code wie diesen hinzuzufügen: </p><p><br /></p>
<pre class="brush:php;toolbar:false;">GROUP_CONCAT(CASE WHEN t3.ship=1 AND t4.item=0 THEN t2.item_no, '.' ,t2.item_name END ORDER BY item_id SEPARATOR ' <br>') „Meine Artikelliste“</pre>
<p>Wie erreicht man das? </p>
您必须使用CONCAT()函数将item_no、'.'和item_name连接起来:
... THEN CONCAT(t2.item_no, '.', t2.item_name) END ...