Mysql
 sql >> Database >  >> RDS >> Mysql

disponibilità di mysql query room

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

Questa è la parte che restituisce l'errore.

Inoltre, per come l'hai fatto, $q1 viene valutato due volte, il che probabilmente non è quello che desideri.

Se ho capito bene cosa stai cercando di fare, dovresti essere in grado di omettere questa parte. Se $q1 non restituisce righe, quindi IN espressione semplicemente non corrisponderà a nulla.

Dovresti anche notare che IN con sottoquery è piuttosto inefficiente in MySQL; funzionerebbe molto più velocemente con un join:

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