Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Podzapytanie zwraca więcej niż 1 wiersz rozwiązania dla zapytania aktualizującego przy użyciu instrukcji SELECT

Kiedy używasz aktualizacji z SET configuration=(SELECT ...) podzapytanie musi zwrócić nie więcej niż jedną wartość (jeden wiersz). Jeśli zwraca więcej niż jedną wartość, jak przypisać tabelę dwóch wierszy na przykład do skalarnej configuration pole. Powinieneś więc dowiedzieć się, DLACZEGO Twoje podzapytanie zwraca więcej niż jeden wiersz i naprawić podzapytanie lub zdecydować, którą JEDNĄ wartość wybrać do aktualizacji w przypadku więcej niż jednego wiersza. Na przykład możesz wybrać maksymalną wartość

SELECT MAX(ad_news_texte.headline)...

lub dowolna pierwsza wartość

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

i tak dalej...

Jeśli potrzebujesz połączyć wszystkie wiersze i umieścić je w jednym wierszu configureation możesz użyć GROUP_CONCAT() funkcja mysql:

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Zapytanie nie zwraca żadnych wyników tylko po dodaniu ORDER BY

  2. Jak mogę wykonać opcjonalne JOIN za pomocą SQL?

  3. BŁĄD! Serwer został zamknięty bez aktualizacji pliku PID (/usr/local/var/mysql/`username`.lan.pid)

  4. Java łączy się z Cloud SQL 2. generacji z maszyny wirtualnej zarządzanej przez Appengine

  5. Indeks PostgreSQL a indeks InnoDB — zrozumienie różnic