• ベストアンサー

SQLiteで特定の順位をもつ項目を検索する方法

SQLiteにおいて、とある一意の数値nが全体のうちの何番目に位置するかどうかは以下のようなクエリで取得できます。 select *,(select count(*)+1 from card as c where c.n < card.n) as idx from card where... 今回は「項目Bに×をもち、かつ順位が○位以上である」や「項目Cに△が含まれる、もしくは順位が○位以下」といったように、順位が条件に含まれるクエリを考えているのですが、これを少ない手順で再現する方法があればお教えください。

質問者が選んだベストアンサー

  • ベストアンサー
  • yamada_g
  • ベストアンサー率68% (258/374)
回答No.1

記載のSQLをインラインビューにすればいいのではないでしょうか。 select * from ( select *,(select count(*)+1 from card as c where c.n < card.n) as idx from card ) where ...; という感じです。 参考までに http://ideone.com/uSQ3fe

Tank2005
質問者

お礼

ご回答ありがとうございました。この例を参考にしてテストを重ねていきたいと思います。