![](/img/trans.png)
[英]Android Sqlite with ContentProvider or SQLiteOpenHelper
[英]Android SQLite query ContentProvider Case Statement syntax
我在運行此查詢時收到錯誤,是否知道我的語法錯誤是什么?
final Cursor c = getContentResolver().query(
Provider.GAME_URI, new String[]{"CASE WHEN " +DBHelper.COLUMN_CRE_USER + " = " + preferences.getInt(LoginScreen.ID, 0) + " THEN (" + DBHelper.COLUMN_CRE_PTS + " AS you AND " + DBHelper.COLUMN_CON_PTS + " AS them) ELSE (" + DBHelper.COLUMN_CON_PTS + " AS you AND " + DBHelper.COLUMN_CRE_PTS + " AS them)"},"turn = ?",
new String[] { preferences.getInt(LoginScreen.ID, 0) + ""}, null);
04月24日19:57:48.345:E / AndroidRuntime(18775):由以下原因引起:android.database.sqlite.SQLiteException:在“ AS”附近:語法錯誤(代碼1):,而在編譯時:創建CASE時創建了SELECT ASE = 112 THEN (創建的玩家和您所連接的玩家一樣)ELSE(創建的玩家和您所創建的玩家一樣)來自游戲在哪里(turn =?)
嘗試這個。
SELECT
CASE WHEN createduser = 112 THEN createdplayerpts ELSE connectedplayerpts END AS you,
CASE WHEN createduser = 112 THEN connectedplayerpts ELSE createdplayerpts END AS them
FROM
game WHERE (turn = ?)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.