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

Hvordan vælger man et begrænset antal rækker for hver fremmednøgle?

Brug:

SELECT x.feedid
  FROM (SELECT t.feedid,
               CASE WHEN @feed != t.feedid THEN @rownum := 1 ELSE @rownum := @rownum + 1 END AS rank,
               @feed := t.feedid
          FROM TABLE t
          JOIN (SELECT @rownum := NULL, @feed := 0) r
      ORDER BY t.feedid) x
 WHERE x.rank <= 3
 ORDER BY x.feedid
 LIMIT 50

Hvad der ikke er klart, er detaljerne om, hvad du vil have returneret - alle rækkerne i din tabel, eller bare feedid'et.



  1. MySQL vs MongoDB 1000 læser

  2. Hvordan får man det sidste indsatte id?

  3. Hvordan specificerer man det overordnede forespørgselsfelt inde fra en underforespørgsel i MySQL?

  4. Kompilere PHP 5.1.6 med PDO MySQL