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

dostępność pokoju zapytań mysql

IF(($q1) > 0, 1, 0)

To jest część zwracająca błąd.

Również sposób, w jaki to masz, $q1 jest oceniany dwukrotnie, co prawdopodobnie nie jest tym, czego chcesz.

Jeśli dobrze rozumiem, co próbujesz zrobić, powinieneś być w stanie po prostu pominąć tę część. Jeśli $q1 nie zwraca żadnych wierszy, a następnie IN wyrażenie po prostu do niczego nie pasuje.

Należy również zauważyć, że IN z podzapytaniami jest raczej nieefektywny w MySQL; działałby znacznie szybciej z połączeniem:

SELECT `c_title` FROM `c_content` JOIN ($q1) `a` ON `c_content`.`c_id`=`a`.`bd_h_id`


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Błąd MySQL:specyfikacja klucza bez długości klucza

  2. Wstaw po obcięciu, zacznij od 1; ale wstawiaj po usunięciu wznawia z poprzedniej wartości

  3. PRZESYŁAJ na DZIESIĘTNY w MySQL

  4. Nieprawidłowa wartość zwrócona z mysql float

  5. Czy możesz użyć automatycznego przyrostu w MySql, jeśli nie jest to klucz podstawowy?