うーん、私はちょうどサンプルテーブルを作り、あなたのクエリが書かれたように動作するようです:
sqlite> create table statuses (word_id, status default -1);
sqlite> insert into statuses (word_id) values (1);
sqlite> insert into statuses (word_id) values (2);
sqlite> insert into statuses (word_id) values (3);
sqlite> insert into statuses (word_id) values (4);
sqlite> insert into statuses (word_id) values (5);
sqlite> select * from statuses;
1|-1
2|-1
3|-1
4|-1
5|-1
sqlite> UPDATE statuses SET status = 0
...> WHERE word_id = (
...> SELECT word_id FROM statuses WHERE status = -1 ORDER BY RANDOM() LIMIT 1
...>);
sqlite> select * from statuses;
1|-1
2|-1
3|0
4|-1
5|-1
だから、他の言葉で、あなたのクエリがされますそうですね。あなたのエラーはおそらくあなたのコードのどこかにあります。
あなたはそれを試したときに何が起こったのですか?問題はありましたか?エラー? – stefanB
"ORDER BY RANDOM()"の問題点は何ですか? –