http://postimg.org/image/4vozphdk7/
所以这些是我的表格;
我以这样的方式保存我的数据:Workout_ID(第二个图)引用了上图中的Workout_ID。
我需要什么 - 在显示我的桌子时,我如何'查找'Workout_ID 2是什么并输出字符串?
在SQLite中完成,这可能吗?
编码表列名称:
date_id = date_of_workout_id
date = date_of_workout
workout_name = workout_name
date_of_workout = DateofWorkout
workout_table = WorkoutTable
workout_id(date's one) = name_of_workout
workout_id(WorkoutTables's one) = workout_id
public String test(String WorkoutSelectedNameInfo){
// TODO Auto-generated method stub
String Weight = "";
open();
ourDatabase = ourhelper.getReadableDatabase();
Cursor c = ourDatabase.rawQuery("SELECT date_of_workout_id,
date_of_workout, workout_name FROM DateofWorkout JOIN WorkoutTable ON
DateofWorkout.name_of_workout = WorkoutTable.workout_id", null);
int iWeight = c.getColumnIndex(KEY_WORKOUT_NAME);
while(c.moveToNext())
{
Weight = Weight + c.getString(iWeight) + "\n";
}
c.close();
ourDatabase.close();
System.out.println(Weight);
return Weight;
}
答案 0 :(得分:0)
更新的答案:
尝试更改
Cursor c = ourDatabase.rawQuery(“SELECT date_of_workout_id,
date_of_workout,workout_name FROM DateofWorkout JOIN WorkoutTable ON DateofWorkout.name_of_workout = WorkoutTable.workout_id“,null);
到
Cursor c = ourDatabase.rawQuery(“SELECT date_of_workout_id,
date_of_workout,workout_name FROM DateofWorkout JOIN WorkoutTable ON DateofWorkout.workout_id = WorkoutTable.workout_id “,null);
问题可能是因为您正在比较 workout_id 中的 name_of_workout 。
也许是一个简单的内部联接?
select dow.date_id, dow.date, w.name
from workout w, date_of_workout dow
where w.workout_id = dow.workout_id
答案 1 :(得分:0)
一个非常简单的JOIN
可以做到这一点;
SELECT date_id, date, workout_name
FROM date_of_workout
JOIN workout_table
ON date_of_workout.workout_id = workout_table.workout_id
答案 2 :(得分:0)
SELECT date_ID, date, workout_name
FROM workouts, dates
WHERE workouts.workout_ID = dates.workout_ID