data type の列がありvarchar
、その中には数値 (10 進数) の値が含まれています。数値が 100 を超えるすべての行を検索する必要があります。数値を含む行をフィルター処理するために使用しています。その後、数値を使用または値に変更ISNUMERIC
しようとしています。サブクエリを使用すると問題が解決するという別の提案を読みましたが、それも試してみましたが、うまくいきませんでしたCAST
CONVERT
decimal
これは私が受け取っているエラーメッセージです:
varchar をデータ型数値に変換中に算術オーバーフロー エラーが発生しました。
コード:
select field_name
from table_name
where ISNUMERIC(field_name) = 1 and
field_name in (select cast(field_name as decimal)
from table_name
where ISNUMERIC(field_name) = 1
and field_name not like '%,%'
and field_name not like '%-%'
and field_name != '.'
and field_name > 100.00)