我创建了一个id和tag为列的表。
id设置为主键。在标签栏中,我输入了多个值。
所以现在我想得到标签值重复次数的计数。
所以我的桌子是这样的。
Id Tag
---------------------
1 Friend, Family
2 Family, Enemy
我的输出应该是这样的:
friend (1)
family(2)
Enemy(1)
我写了一段代码但没有得到我想要的结果。
这是MyDatabase.java
代码:
public Details calculateCount()
{
Details detail = null;
try
{
SQLiteDatabase db=this.getWritableDatabase();
String selectQuery=("select count(*),Tags from photodetails group by Tags" );
Cursor cursor = db.rawQuery(selectQuery, null);
if(cursor.moveToLast())
{
do
{
detail=new Details(Integer.parseInt(cursor.getString(0)),(cursor.getString(1)));
}while( cursor.moveToNext());
}
}
catch(Exception e)
{
e.printStackTrace();
}
return detail;
}
这是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.
}
}
请帮我解决这个问题
答案 0 :(得分:0)
如果你想得到一个计数,你将需要创建一个方法,例如int getCount()
方法,它将返回计数的int值。目前,您有Details calculateCount()
,它将返回一个Details对象。