SQLite DBに次の列があります。次の行の値を持つ行を更新するsqlite
id,ts,origin,product,bid,ask,nextts 1,2016-10-18 20:20:54.733,SourceA,Dow,1.09812,1.0982, 2,2016-10-18 20:20:55.093,SourceB,Oil,7010.5,7011.5, 3,2016-10-18 20:20:55.149,SourceA,Dow,18159.0,18161.0,
どのように私は、同じソースから、同じ製品(TS)については、次のタイムスタンプを持つ「次のタイムスタンプ」列(nextts)を取り込むことができますか?私は次のことを試してきましたが、UPDATE文にサブクエリを置くことはできません。
UPDATE TEST a SET nextts = (select ts
from TEST b
where b.id> a.id and a.origin = b.origin and a.product = b.product
order by id asc limit 1);
これを呼び出すと表示できますが、まだ値を更新する方法が見つかりませんでした。
select a.*,
(select ts
from TEST b
where b.id> a.id and a.origin = b.origin and a.product = b.product
order by id asc limit 1) as nextts
from TEST a
order by origin, a.id;
エラーメッセージを秘密にしていただきありがとうございます。 –