通过 SQL 加入 Android 联系人表/数据库?

Posted

技术标签:

【中文标题】通过 SQL 加入 Android 联系人表/数据库?【英文标题】:Joining Android contact tables/databases by SQL? 【发布时间】:2012-09-15 07:27:41 【问题描述】:

我需要获取手机上的所有联系人及其关联的电话号码,因此我需要加入 android 存储在其内部 contacts.db 中的一些联系人表。我认为仅通过 SQL 语句加入数据比使用所有内容提供者的东西要容易得多,或者有什么方法可以加入这些数据?另外,如果我编写一个 SQL 语句,表名和字段是否有任何常量,以便我可以保持查询至少有点通用,这样它就不会在下一次 Android 更新时中断,以防它们发生变化表名?感谢您的任何提示!

【问题讨论】:

【参考方案1】:

您可以write your own content provider to do the join,但无论如何您都可以使用自己的 SQL 查询。

内置的联系人提供者有几个documented column names。 表名似乎是一个实现细节,但如果它们发生变化,语义很可能也会发生变化,因此您的自定义查询无论如何都会中断。

【讨论】:

以上是关于通过 SQL 加入 Android 联系人表/数据库?的主要内容,如果未能解决你的问题,请参考以下文章

Bigquery SQL代码可以提供最早的联系

Android:如何将数据与联系人相关联

如何使用 SQL 检查记录是不是存在?

在android中获取sqlite SQL join的表名

访问:如何实现将联系人加入旅行?

PySpark/SQL 加入非唯一键