如何在sql中的一个查询中从三个表中获取数据?

时间:2019-02-20 18:32:49

标签: java android sql

我想编写一种将显示三个表中数据的方法。对于来自两个表的显示数据,我使用了“ UNION ALL”语法,但是在这种情况下,它向我显示了一些奇怪的数据。它应该显示如下内容: 数据1 数据2 数据3 但实际上它向我展示了这样的东西 数据1 数据2 数据2 我有点不知道为什么。但是我认为这与我的SELECT语法有关。

我之前提到的方法。

public Cursor getSplitAllPlans() {
    SQLiteDatabase db = this.getReadableDatabase();
    String query = "SELECT * FROM " + SPLIT_MONDAY_PLAN + " UNION ALL SELECT * FROM " + SPLIT_WEDNESDAY_PLAN + " UNION ALL SELECT * FROM " + SPLIT_FRIDAY_PLAN;
    Cursor cursor = db.rawQuery(query, null);
    return cursor;
}

1 个答案:

答案 0 :(得分:0)

您的SQL查询似乎正常。

请检查以下两个语句是否返回相同的值 1)选择* FROM“ + SPLIT_WEDNESDAY_PLAN; 2)选择* FROM“ + + SPLIT_FRIDAY_PLAN;

如果这些相等,则返回的数据将为“数据1数据2数据2”