Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/225.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 获取重复列值的计数_Android - Fatal编程技术网

Android 获取重复列值的计数

Android 获取重复列值的计数,android,Android,我已经创建了一个id和标记为列的表 id设置为主键。在标记列中,我输入了多个值 现在我想得到标记值重复的次数 所以我的桌子是这样的 Id Tag --------------------- 1 Friend, Family 2 Family, Enemy 我的输出应该是这样的: friend (1) family(2) Enemy(1) 我已经写了一个代码,但没有得到我想要的结果 这是MyDatabase.java代码: 这是MAinActivity.java代码 p

我已经创建了一个id和标记为列的表

id设置为主键。在标记列中,我输入了多个值

现在我想得到标记值重复的次数

所以我的桌子是这样的

Id    Tag
---------------------
1     Friend, Family
2     Family, Enemy
我的输出应该是这样的:

friend (1)
family(2)
Enemy(1)
我已经写了一个代码,但没有得到我想要的结果

这是MyDatabase.java代码:

这是MAinActivity.java代码

 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main_activity2);
  getActionBar().setDisplayHomeAsUpEnabled(true);

          MyDataBase MyDB  = new MyDataBase(this);
  Log.d(LOGCAT,"Entered MAinActivity2");

Details c= MyDB.calculateCount();


 if(c == null)
 {
     Log.d(LOGCAT,"C is null");

 }
 else
 {
 Log.d(LOGCAT,c.getTag()); // Here iam only retrieving tag dont know how to get that count.
 }

  }

请在这方面帮助我

如果你想得到一个计数,你需要创建一个方法,比如一个int getCount方法,它将返回计数的int值。当前,您有Details calculateCount,它将返回一个Details对象。

您当前的代码得到了什么?你的日志怎么说?在我的日志中,我只获取前两个标签ie friend and familyYea,我将使用@FrankN.Stein来告诉你,首先,你可能不想在同一个条目中输入两个值。你可能会想把它分为两行。这就是说,技术上是可以做到的。但这将是一个痛苦的驴。好的,我会尝试添加一个值,但只有计数可以显示。我还想显示标签值,这就是为什么我想到了细节计算孔。那样的话,你的问题有点误导人。你说我想得到标签值重复的次数。你到底想要什么?您想简单地显示标记值吗?我已经编写了我需要的输出类型。同样,我同意@FrankN.Stein。按照现在的方式,两个对象的计数为1,因为SQL查询查找的是整个值,只有两个值是唯一的:Friend、Family和Family、Friend。作为一个值,SQL查询将不知道这实际上是两个标记。而您的Details calculateCount方法每次都会覆盖detail,因此显然您不会返回多个细节。您的行详细信息c=MyDB.calculateCount;将只将一个Details对象放入变量c中。因此,您的日志将只显示一个对象。
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main_activity2);
  getActionBar().setDisplayHomeAsUpEnabled(true);

          MyDataBase MyDB  = new MyDataBase(this);
  Log.d(LOGCAT,"Entered MAinActivity2");

Details c= MyDB.calculateCount();


 if(c == null)
 {
     Log.d(LOGCAT,"C is null");

 }
 else
 {
 Log.d(LOGCAT,c.getTag()); // Here iam only retrieving tag dont know how to get that count.
 }

  }