簡體   English   中英

查詢在VS2017中返回的結果與SSMS中返回的結果不同

[英]Query returning different result in VS2017 than in SSMS

我正在查詢SSMS中的一張表,以填充Visual Studio中的gridview。 我建立了查詢以將varchar值排序為數字值。 我已經嘗試了幾種不同的方法在SSMS中取得成功。

ORDER BY case 
when IsNumeric(mycol) = 1 then CONVERT(float, mycol)
else mycol
end

ORDER BY try_convert(float, mycol)

當我對gridview進行排序時,返回的值將按字符串(1、100、2、200)進行排序。 我在VS中跟蹤了查詢,將其復制到SSMS中並返回了正確的結果。 誰能闡明這個問題?

問題不是我的查詢,而是GridViewSortEvent。 排序時,我在查詢數據並將其綁定到gridview的地方調用GV_Sorting,然后排序事件再次將其作為字符串值進行了排序,因為表中的列為varchars。 我通過取消方法第一行中的排序事件來停止此操作。

e.Cancel = true;  

暫無
暫無

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

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