2011-02-18 9 views
3

で働いていないがWhereDateDiffを追加AS選択InterBaseの

select payeeid, EXTRACT(WEEKDAY FROM checkdate) as DOW, 
(bankcleared - checkdate) as DateDiff 
from Master 
where (bankcleared is not null) 
order by payeeid, DOW, DateDiff 

に動作します - あなたが唯一のGROUP BY、ORDER BY、またはHAVING句で列の別名を使用することができます

select payeeid, EXTRACT(WEEKDAY FROM checkdate) as DOW, 
(bankcleared - checkdate) as DateDiff 
from Master 
where (bankcleared is not null) AND (DateDiff >= 1) 
order by payeeid, DOW, DateDiff 
+0

を行く詳細情報については、この

select payeeid, EXTRACT(WEEKDAY FROM checkdate) as DOW, (bankcleared - checkdate) as DateDiff from Master where (bankcleared is not null) AND ((bankcleared - checkdate)>= 1) order by payeeid, DOW, DateDiff 

をお試しくださいどこにエラーが発生する - DateDiff Column unknown – IElite

+0

DATEDI FFはビルトイン関数で、2つの日付タイムスタンプ間の日付部分の差異を取得します。 –

答えて

11

を動作しません。

標準SQLでは、WHERE句の列エイリアスを参照することはできません。この制限は、WHEREコードが実行されたときに列の値がまだ決定されていない可能性があるために課せられます。

DateDiff関数を追加する理由....申し訳ありませんが、私はまた、依頼するもので、これらのリンクを通じて

Can you use an alias in the WHERE clause in mysql?

Unknown Column In Where Clause

0
select payeeid, 
     EXTRACT(WEEKDAY FROM checkdate) as DOW, 
     (bankcleared - checkdate) as DateDiff 
from Master 
WHERE (bankcleared is not null) 
AND ((bankcleared - checkdate)>= 1) 
Order by payeeid, DOW, DateDiff