这SQL怎么样限制条件? 紧急啊!~(100分)

  • 主题发起人 主题发起人 pckite
  • 开始时间 开始时间
P

pckite

Unregistered / Unconfirmed
GUEST, unregistred user!
我在中adoquery1使用了这句SQL:

adoquery1.SQL.Add('SELECT MIN(((分数1+分数2)-abs(分数1-分数2))/2) FROM sporter')

目的是取数据库中字段 分数1 和 分数2 中的最小值,其中分数1 和分数2的条件是都要大于0

,即拿大于0的数据来比较,如何限制这个大于0的条件呢?请指教。
 
在后面加上
Where 分数1>0 and 分数2>0
 
奇怪,复杂的会简单的不会。
 
我试过了,在后面加上
Where 分数1>0 and 分数2>0
不行啊!~
 
你的括号是怎么弄的呀
 
是这样吗?
adoquery1.SQL.Add('SELECT MIN(((分数1+分数2)-abs(分数1-分数2))/2) FROM sporter');
adoquery1.SQL.Add('Where 分数1>0 and 分数2>0');
也不行呀
如果是这样,它说我的语句太长了不行。
adoquery1.SQL.add('SELECT MIN((((分数1=(select 分数1from sporter where 分数1>0 ))+(分数2=(select 分数2from sporter where 分数2>0 )))-abs((分数1=(select 分数1 from sporter where 分数1>0 ))-(分数2=(select 分数2 from sporter where 分数2>0 ))))/2) FROM sporter');


 
the min macro compares two values and returns the smaller one. The data type can be any numeric data type, signed or unsigned. The data type of the arguments and the return value is the same.
你的min里面只有一个值
 
数据库我不熟悉:(
 
改成这个:
adoquery1.SQL.Add('SELECT MIN(((分数1+分数2)-abs(分数1-分数2))/2) FROM '+
' ( select * from sporter where Where 分数1>0 and 分数2>0 ) ');
 
后退
顶部