Mysql
 sql >> база данни >  >> RDS >> Mysql

Mysql достъп до основната таблица вътре в дясно присъединена подзаявка

Използвайте:

    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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Има ли конвенция за именуване за MySQL?

  2. Хвани изключение за вмъкване на дублиран ключ

  3. MySQL Намерете най-близкия до точка полигон

  4. MySQL криптирани колони

  5. Вярно ли е, че броят на колоните не влияе върху производителността на базата данни, но броят на редовете влияе?