sql >> Databasteknik >  >> RDS >> Mysql

Subquery returnerar mer än en radslösning för uppdateringsfråga med select-sats

När du använder uppdatering med SET configuration=(SELECT ...) underfrågan får inte returnera mer än ett värde (en rad). Om det returnerar mer än ett värde, hur tilldelar du två radtabeller till exempel till skalär configuration fält. Så du bör ta reda på VARFÖR din underfråga returnerar mer än en rad och fixa underfrågan eller bestämma vilket ETT värde du ska välja för uppdatering om det finns fler än en rad. Du kan till exempel välja maximalt värde

SELECT MAX(ad_news_texte.headline)...

eller ett första värde

(SELECT ad_news_texte.headline)... LIMIT 1)

och så vidare...

Om du behöver sammanfoga alla rader och lägga dem i en rad configuration du kan använda GROUP_CONCAT() mysql-funktion:

SET configuration=(SELECT GROUP_CONCAT(DISTINCT ad_news_texte.headline) FROM ....


  1. Hur man byter namn på primär nyckelbegränsning för flera tabeller i SQL Server Database - SQL Server / TSQL självstudie del 64

  2. Importera hex/binär data till mysql

  3. MySQL INFOGA annat om det finns UPPDATERING

  4. Android :Fel vid kopiering av databas (Sqliite) från tillgångsmapp