Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Kombinieren Sie zwei MySQL-Abfragen zu einer

Sie können nicht ORDER BY in Ihrem ersten SELECT und dann UNION es.

Bearbeiten
Sie können jedoch

wie in der MySQL UNION-Dokumentation

(SELECT a FROM t1 WHERE a=10 AND B=1 ORDER BY a LIMIT 10)
UNION
(SELECT a FROM t2 WHERE a=11 AND B=2 ORDER BY a LIMIT 10);

Das macht dann Ihr SQL

(SELECT clicks FROM clicksTable WHERE clicks > 199 ORDER BY clicks ASC LIMIT 1)
UNION
(SELECT clicks FROM clicksTable ORDER BY clicks DESC LIMIT 1);

Bearbeiten 2
Um in einem array zurückzugeben

SELECT (SELECT clicks 
        FROM clicksTable 
        WHERE clicks > 199 
        ORDER BY clicks ASC 
        LIMIT 1) AS NextClick,
       (SELECT clicks 
        FROM clicksTable 
        ORDER BY clicks DESC 
        LIMIT 1) AS TopClick;