壹用戶對繳款日報中的票據號使用情況提出要求,希望以類似5-6,9-10,12-20的方式展現,以便直觀地反映實際使用的票據號情況。
我們經過分析發現,實現這壹需求的難點主要有兩點:
1. 如果要找出斷號,用SQL語句實現,主要是要考慮性能;
2. 將排除斷後的使用號碼段的多條記錄轉換為壹行顯示,即用SQL實現行列轉換;
如果通過編程來實現,這兩點都不難,但通過SQL來實現,則需要壹些技巧。
假設知道已用票據號為3,4,5,7,8,11,12,最小為3,最大為12,求斷號的SQL如下:
...更多...