第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

對 MySQL 表中的日期進(jìn)行排序(不按日期排序)

對 MySQL 表中的日期進(jìn)行排序(不按日期排序)

PHP
慕少森 2022-09-03 15:53:28
如何對表中列中的日期進(jìn)行排序?(時(shí)間戳)請注意,我不是要求按日期對行進(jìn)行排序,而是在詢問如何在記錄中交換日期,以便所有日期都按正確的順序排列;無需更改任何其他內(nèi)容。所以;例如:id     foo      bar1      A        03-03-20302      B        01-01-20103      C        02-02-2020成為。。。id     foo      bar1      A        01-01-20102      B        02-02-20203      C        03-03-2030首選解決方案使用直接 MySQL 或 MySQL 和 PHP。
查看完整描述

1 回答

?
Cats萌萌

TA貢獻(xiàn)1805條經(jīng)驗(yàn) 獲得超9個贊

您可以使用CTE使用MySQL查詢更新表,該CTE計(jì)算每行的,排序方式為 和 ;將每個值替換為具有相應(yīng)按行號排序的值:ROW_NUMBER()idbarbaridbar


WITH CTE AS (

  SELECT id, bar,

         ROW_NUMBER() OVER (ORDER BY id) AS rn_id,

         ROW_NUMBER() OVER (ORDER BY bar) AS rn_bar

  FROM data

)

UPDATE data d

JOIN CTE c1 ON c1.id = d.id

JOIN CTE c2 ON c2.rn_bar = c1.rn_id

SET d.bar = c2.bar

輸出(對于您的示例數(shù)據(jù)):


id  foo     bar

1   A       2010-01-01

2   B       2020-02-02

3   C       2030-03-03


查看完整回答
反對 回復(fù) 2022-09-03
  • 1 回答
  • 0 關(guān)注
  • 128 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號