次の列を含む次の表があります。
Person(id, name, surname)
同じ名前の人を抽出したいのですが、名前ごとに 5 行しか返されません。
何か案は?ありがとう。
編集: jQuery Mobile と Phonegap を使用して iPad アプリを開発しているため、HTML5 ローカル データベースを使用しています。元の順序を維持する必要があります。
次の列を含む次の表があります。
Person(id, name, surname)
同じ名前の人を抽出したいのですが、名前ごとに 5 行しか返されません。
何か案は?ありがとう。
編集: jQuery Mobile と Phonegap を使用して iPad アプリを開発しているため、HTML5 ローカル データベースを使用しています。元の順序を維持する必要があります。
SELECT p1.* FROM Person p1
WHERE p1.id in (
SELECT TOP 5 p2.id FROM Person p2
WHERE p2.name = p1.name
)
ORDER BY p1.id
select name, surname
from Person a
where id in (
select top 5 b.id from Person b where b.name=a.name
)
select distinct top 5 name from Person
パーティションオーバーを使用できます。例:
USE Table1;
with TempXYZ as
(
select *, row_number() over (partition by fname order by fname) as ABC
)
SELECT * from TempXYZ where ABC <=5
TempXYZ は、データを格納するために使用される単なる一時テーブルです。ABC は、fname で分割されるダミー フィールドです。