1 回答

TA貢獻(xiàn)1850條經(jīng)驗(yàn) 獲得超11個(gè)贊
您需要規(guī)范化表以將值存儲(chǔ)在單獨(dú)的行而不是列中。但是,如果您需要一個(gè)關(guān)于如何在現(xiàn)有結(jié)構(gòu)中執(zhí)行此操作的解決方案,那么這里是查詢,
UPDATE points_history?
SET
? ? 7d_before = 6d_before,
? ? 6d_before = 5d_before,
? ? 5d_before = 4d_before,
? ? 4d_before = 3d_before,
? ? 3d_before = 2d_before,
? ? 2d_before = 1d_before,
? ? 1d_before = (
? ? ? ? SELECT?
? ? ? ? ? ? today_points
? ? ? ? FROM
? ? ? ? ? ? points
? ? ? ? WHERE
? ? ? ? ? ? user_id = '123'
? ? ? ? )
WHERE
? ? user_id = '123';
假設(shè)您要更新用戶 ID“123”。為了將值向右移動(dòng),我們首先將第 6 天的值復(fù)制到第 7 天,然后將第 5 天復(fù)制到第 6 天,然后將第 4 天復(fù)制到第 5 天,依此類推。最后,我們將從today_points表中選擇來(lái)更新第一天的值。
這是工作小提琴
- 1 回答
- 0 關(guān)注
- 143 瀏覽
添加回答
舉報(bào)