2012-08-13 39 views
0

我希望幫助您使用sql查詢代碼將特定列中的後續數據逐行推送。 例如在類似下面的隨機表,如何在sql結果中將數據向下推一行

x column    y column 
6      6 
9      4 
89      30 
34      15 

結果應該是「推」倒行,這意味着

x column    y column 
6      null or 0 (preferably) 
9      6 
89      4 
34      30 
+1

您可能想要將其設置爲更好的意義。 – 2012-08-13 21:31:46

+2

這只是我的好奇心:你爲什麼要這麼做? – Dave 2012-08-13 21:33:13

+0

它與SQL有什麼關係? – alfasin 2012-08-13 21:33:17

回答

1

SQL表有訂貨的沒有固有的概念。因此,「下一排」的概念沒有意義。

您的示例沒有列指定行的順序。沒有下一個定義。所以,你想做的事情是無法完成的。

0

我不知道有一種簡單的方法可以用你正在顯示被格式化表格的方式來做到這一點。如果您可能添加了兩個連續編號的提供行號和行號+1值的整數字段,則可以將該表加入自己並獲取該信息。

+0

我的歉意。我不知道表格格式不正確。你的意思是把1列「test1」加上1,2,3,4,5,6等作爲其行,另一列加入2,3,4,5,6,7列,然後將它加入原始列?然後移動原始列中的值(例如,我在問題中提供的示例將是6,4,30和15),使得子集(6,4,30,15)中的任何值將與值在測試2中,通過匹配行號,將被移動到test1中的對應值。 – user1569897 2012-08-13 23:27:04

+0

@ user1569897這是jist,儘管不會移動值,它會像'SELECT a.columnx,b.columny FROM tablename as a JOIN tablename as a b on a.test1 = b.test2' – 2012-08-14 14:20:04

0

帶你表的備份之後: 做一個PHP函數,將: - 負荷Y的所有值到一個數組 - 設置Y = 0(MYSQL UPDATE) - 加載值從PHP數組回MYSQL

相關問題