Sql 我只想从表中获取大于10的数值

Sql 我只想从表中获取大于10的数值,sql,sql-server,sql-server-2008,Sql,Sql Server,Sql Server 2008,我只想从表中获取大于10的数值 select col1 from mytable col1 ---- 5.78 14.5 14.67 12 10.10 VERIFIED 15.3% 10 10.0 6.89 TNT 我希望得到以下结果: col1 ---- 14.5 14.67 12 10.10 15.3 10 10.0 SQL: SQL: SQL(假设数据类型为非数字类型): SQL(假设数据类型为非数字类型): 返回 Col1 Value 14.5

我只想从表中获取大于10的数值

select col1 from mytable

col1
----
5.78
14.5
14.67
12
10.10 VERIFIED 
15.3%
10
10.0
6.89
TNT
我希望得到以下结果:

col1
----
14.5
14.67
12
10.10
15.3
10
10.0
SQL:

SQL:

SQL(假设数据类型为非数字类型):

SQL(假设数据类型为非数字类型):

返回

Col1            Value
14.5            14.5
14.67           14.67
12              12
10.10 VERIFIED  10.10
15.3%           15.3
10              10
10.0            10.0
返回

Col1            Value
14.5            14.5
14.67           14.67
12              12
10.10 VERIFIED  10.10
15.3%           15.3
10              10
10.0            10.0

你的数据库管理系统是什么?另外,列的数据类型是什么?SQL 2008r2,数据类型是VARCHAR您的dbms是什么?另外,该列的数据类型是什么?SQL 2008r2,数据类型是varcharMsg 245,级别16,状态1,第1行将varchar值“5.78”转换为数据类型int时转换失败。Msg 245,级别16,状态1,第1行将varchar值“5.78”转换为数据类型int时转换失败。@user3376315help@user3376315如果这奏效了,您可以随意选择作为answer@user3376315乐意help@user3376315如果这有效,请随意选择答案
Declare @YourTable table (Col1 varchar(50))
Insert Into @YourTable values
('5.78'),
('14.5'),
('14.67'),
('12'),
('10.10 VERIFIED'),
('15.3%'),
('10'),
('10.0'),
('6.89'),
('TNT')

Select Col1
      ,Value = Left(col1,patindex('%[0-9] %',replace(col1,'%',' ')+' '))
 From @YourTable 
 Where cast(Left(col1,patindex('%[0-9] %',replace(col1,'%',' ')+' ')) as money)>=10
Col1            Value
14.5            14.5
14.67           14.67
12              12
10.10 VERIFIED  10.10
15.3%           15.3
10              10
10.0            10.0