這可能很簡單,但我不是SQL專家,所以我迷路了。據我所知,SQL需要查詢並按照一定的順序執行它,我相信這是爲什麼這個查詢不起作用:檢查字段是否爲數字,然後僅對一個語句中的字段執行比較?
select * from purchaseorders
where IsNumeric(purchase_order_number) = 1
and cast(purchase_order_number as int) >= 7
科技部purchar_order_number字段是數字,但我們最近推出的字母數字的。我試圖得到的數據是看'7'是否大於最高數字purchase_order_number。
數字()函數過濾掉細小的字母數字字段,但這樣做的後續投比較拋出這個錯誤:
Conversion failed when converting the nvarchar value '124-4356AB' to data type int.
我不要求什麼錯誤意味着,這是顯而易見的。我詢問是否有辦法在單個查詢中完成我想要的操作,最好是由於ORM約束而在where子句中完成。
因爲這只是一個數字,你可以只說'和PURCHASE_ORDER_NUMBER>「7'' –
你可以爲'purchaseorders'表包括索引架構?我正在嘗試構建一個repro - 我目前可以通過ShyJ的例子獲得錯誤信息,但不能和您的例子一樣。 –