Mysql
 sql >> база данни >  >> RDS >> Mysql

Решението на подзаявката връща повече от 1 ред грешка

= може да се използва, когато подзаявката връща само 1 стойност.

Когато подзаявката върне повече от 1 стойност, ще трябва да използвате IN :

select * 
from table
where id IN (multiple row query);

Например:

SELECT *
FROM Students
WHERE Marks = (SELECT MAX(Marks) FROM Students)   --Subquery returns only 1 value

SELECT *
FROM Students
WHERE Marks IN 
      (SELECT Marks 
       FROM Students 
       ORDER BY Marks DESC
       LIMIT 10)                       --Subquery returns 10 values


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Грешка в MySql 150 - Външни ключове

  2. 9 наистина полезни MySQL функции за дата, които са лесни за запомняне

  3. Използвате слоя на база данни на Django извън Django?

  4. ГРЕШКА 2003 (HY000):Не мога да се свържа с MySQL сървър на '127.0.0.1' (111)

  5. Съвети за мигриране от собствени към бази данни с отворен код