1
我與數據類型爲varchar一個表,用於存儲版本numbers.I需要過濾和選擇小於等於5篩選記錄時,列類型爲varchar
唯一版本號有一列輸入
5.0.0.330
Eclair
5.0.0
5.0.0.591
5.0.0.405
6.0.0.522
4.0.2
7.1.0.205
5.0.0.592
2.3.4-ez
4.2.2-2013-12-11-V1.0
4.6.0.304
nubernel-2.6.35_v0.0.1
2.1-update1
2.3
輸出
5.0.0
4.0.2
2.3.4-ez
4.2.2-2013-12-11-V1.0
4.6.0.304
2.1-update1
2.3
我能得到通過轉換varchar列的第一個字符,所有小於5的版本。但是我無法弄清楚如何在結果集中包含5.0.0版本。
select distinct os_ver,substring(os_ver,1,1)
from
dbo.mytable
where
os_ver like '[0-9]%' and cast (substring(os_ver,1,1) as int) < 5
這給了我所有版本小於5除了版本5.0.0
4.0.2
2.3.4-ez
4.2.2-2013-12-11-V1.0
4.6.0.304
2.1-update1
2.3
完美的感謝,也適用,如果我有數據5.0版。 –
@inquisitive_mind樂於助人。我懷疑你只是過度思考 –
是的,的確,我確實在過度思考它。有時候解決方案非常簡單。再次感謝。 –