在sqlite中添加一个query-time变量

时间:2013-01-18 19:31:14

标签: android sql sqlite

我正在编译一个原始语句,我需要将以前的查询结果分配给一个变量,并将其用作下一个查询的id。不幸的是我不记得如何在SQL中做到这一点。

这就是我得到的

01-18 18:22:22.443: E/AndroidRuntime(5801): android.database.sqlite.SQLiteException: near "AS": syntax error (code 1): , while compiling: SELECT _id,date,title,description, (SELECT title FROM discipline WHERE _id=gdid ) AS discipline_title FROM alert WHERE _id=(SELECT eaid FROM alert_to_discipline) AS gdid

我怀疑AS gdid是一个错误的方法,使它成为一个变量。我该怎么做?

这是更好的格式化查询

SELECT _id,date,title,description,
    (SELECT title FROM discipline WHERE _id=gdid ) AS discipline_title
        FROM alert WHERE _id=(SELECT eaid FROM alert_to_discipline) AS gdid

1 个答案:

答案 0 :(得分:1)

我也有过这样的经历。您不能在SQLite中使用临时变量。最好的方法是运行查询并将其分配给java声明的变量。然后将其传递给第二个查询。