2

すべての Android 連絡先から情報を取得する必要があります。

  • ファーストネーム
  • 苗字
  • 携帯電話
  • 生年月日

連絡先に 2 つ以上の携帯電話番号がある場合は、選択範囲に複数回収まる必要があります。

現在ContentResolver.Query()、必要な列を取得するために使用していますが、テーブルを結合するのではなく、複数回のクエリが必要です。

Android の連絡先から複数のデータ フィールドを照会するにはどうすればよいですか?

つまり、SQLクエリのようなものを実行する必要があります:

SELECT
    dName.Data2 as [firstName]
    , dName.Data3 as [lastName]
    , dPhone.Data1 as [cellPhone]
FROM
   raw_contacts
INNER JOIN data as dName on dName.RAW_CONTACT_ID = Contacts._ID and dName.MIME_TYPE =  ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE
INNER JOIN data as dPhone on dName.RAW_CONTACT_ID = Contacts._ID and dName.MIME_TYPE =  ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE
4

1 に答える 1