2015-02-06 99 views
0

我有一個mySql數據庫中的數字字段,我需要「連接」它與另一個數字字段,但我需要第二個字段返回爲zerofill以保留結果的順序。普通字段返回像zerofill字段

我試圖解釋:

  • 第一場= 2015;第二個字段= 3 Concat_WS = 2015_3;
  • 第一場= 2015;第二場= 10個CONCAT_WS = 2015_10

所以保持正確的順序 感謝大家

如果我命令的結果2015_10會2015_3

所以我想知道是否有什麼辦法獲得

  • First field = 2015;第二個字段= 3 Concat_WS = 2015_03;
  • 第一場= 2015;第二個字段= 10 Concat_WS = 2015_10

因此保留正確的順序而不改變zerofill中的字段。 感謝大家

回答

0

您可以使用lpad()

concat_ws('_', field1, lpad(field2, 2, '0')) 

如果這些字段是從原來的日期快到了,你應該使用date_format()代替:date_format(col, '%Y-%m')

+0

太棒了!這正是我需要的。 (不,這些字段不是日期,第一個字段是年份,但第二個字段是數字)。非常感謝。 – genespos 2015-02-06 16:52:00

0

第二種方式是正確的(零填充第二個字段),否則,你可以單獨訂購兩場如下:

SELECT concat(FirstField, '_', SecondField) 
FROM yourtable 
ORDER BY FirstField, SecondField 

不加零填補了第二場。