簡體   English   中英

t-SQL中INT和VARCHAR數據類型在MAX中的功能

[英]Functioning of MAX in t-SQL for INT and VARCHAR Datatypes

昨天早上,我的經理給了我一個新的數據庫,我不得不在其中編寫一些SQL存儲過程。 有一列MM用於數字值,因此我了解到Sql Function MAX可以在其上使用。 但是事實並非如此。

這是一個varchar列,其中包含從1到41隨機存儲的數值。我假設我的SQL語句:“ SELECT MAX(MMS)FROM tbl”將給出41,但結果為9。

后來,我投資該MAX與字符串數據類型一起使用時,從列中獲取第一個數字字母,然后從中獲得MAX。

有人知道為什么會這樣嗎?

從這里:

http://msdn.microsoft.com/en-uk/library/ms187751.aspx

對於字符列,MAX在整理序列中找到最大值。

如果要按數字對列的內容進行排序,可以執行以下操作:

ORDER BY len(mms), mms

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM