sql >> Databáze >  >> RDS >> Mysql

Mysql přístup k hlavní tabulce uvnitř vpravo připojeného poddotazu

Použijte:

    SELECT a.id,
           a.region 
      FROM ads a    
RIGHT JOIN (SELECT t.*,
                   CASE 
                      WHEN @region = t.region THEN @rownum := @rownum + 1
                      ELSE @rownum := 1
                   END as rank,
                   @region := t.region
              FROM ADS t
              JOIN (SELECT @rownum := 0, @region := 1) r
          ORDER BY t.region) b ON b.id = a.id
                              AND b.region = a.region
                              AND b.rank <= 4



  1. Zakázat zabezpečené priv pro načítání dat na MySQL

  2. Dotazy Django ORM selžou při výběru nových objektů

  3. Nelze vyřešit název tabulky blízko

  4. SQL Server – chybí NATURAL JOIN / x JOIN y USING (pole)