1

私はSQLの初心者です。Androidのリストビューにsqliteデータを表示したいのですが。テーブルの構造は次のとおりです。

| _id | name | data | ...
---------------------
|   0 |   A  |  abc |
|   1 |   B  |  def |
|   2 |   C  |  ghi | ...
|   3 |   D  |  jkl |
|   4 |   E  |  mno |

したがって、ユーザーが[C、B、D]を入力するときに、名前とデータ列をユーザーの順序で表示したいと思います。例えば、

リストビュー

---------------------
     C     ghi
---------------------
     B     def
---------------------
     D     jkl
---------------------

私は今、ArrayAdapterとCursorAdapterの使用の間で引き裂かれています。

SELECTを3回実行し、値を配列に格納して、ArrayAdapterを使用する必要がありますか?または、SELECTで私の要求を一度満たすことができますか?

前もって感謝します。

4

2 に答える 2

1

少し複雑になりますが、1回のクエリで実行できます。

SELECT * FROM yourTable
ORDER BY 
  CASE name
    WHEN 'C' THEN 0
    WHEN 'B' THEN 1
    WHEN 'D' THEN 2
  END

もちろん、ユーザー入力に従ってクエリを作成する必要があります。 ここでもっと見てください

于 2012-04-23T07:40:37.377 に答える
0

SELECTクエリで要求を満たすことができます。クエリは次のようになります。

String query = "SELECT * FROM yourTable WHERE name IN ('C', 'B', 'D');"
于 2012-04-23T07:16:21.570 に答える