sql >> Databasteknik >  >> RDS >> Mysql

MONGODB:Konvertera SQL Union-fråga

Du kan göra detta med aggregeringsramverk. Det kommer inte att vara särskilt effektivt att göra det i en fråga, så du bör förmodligen bara göra samma sak som du gör i SQL som kör två frågor - den enda skillnaden är att MongoDB inte "union" dem för du, och du måste göra det i programmet.

De två aggregeringsfrågorna skulle vara:

db.collection.aggregate( [
        {$project:{name:1, points:{$subtract:["$score_kills","$score_deaths"]}}},
        {$sort:{points:-1}},
        {$limit:10}
]);

Detta skulle ge dig topp 10. För att få de lägsta 10 skulle du göra samma sak men sortera efter {points:1} vilket ger dig botten 10.




  1. Måste en JDBC-drivrutinsversion och en DB-version matcha exakt?

  2. SQL Server - Bästa sättet att få identiteten för den infogade raden?

  3. Oracle SQL Skapa PDF från data

  4. SQL:välj alla unika värden i tabell A som inte finns i tabell B