0
私は、どのクエリに通常よりも多くの時間がかかっているかを調べるという単純な問題に悩まされています。私のスクリプトは以下の通りです:はどのように私は一定の値よりも大きい時間間隔を持つレコードを取得することができます:Teradataの特定の値より大きい時間間隔を持つレコードを選択してください
locking row for access
SELECT
username,
CollectTimeStamp,
((firstresptime - starttime ) HOUR TO second ) AS ElapsedTime,
((firstresptime - firststeptime ) HOUR TO second) AS ExecutionTime,
CAST(((firstresptime - firststeptime) SECOND) AS INTEGER) AS ExecutionTimeInt,
(ElapsedTime - ExecutionTime) AS Delay,
-- other kpis here
FROM dbql_data.dbql_all
where username ='MyUser';
and dateofday> '2017-07-01'
and ExecutionTimeInt > 5
しかし、私はExecutionTimeInt
5未満
質問を持つレコードを取得しますか?
追加情報:
select * from dbc.dbcinfo;
戻り
InfoKey InfoData
1 VERSION 15.10.04.10
2 RELEASE 15.10.04.02
3 LANGUAGE SUPPORT MODE Standard
、すべてのことから、以上9999秒を持っていることは非常に小さなチャンスがありますクエリはTeradata.Netクライアントを使用して発行され、最大600秒のタイムアウトがあります。とにかく、私は最初の提案( 'WHERE ElapsedTime> interval '5' second')を試みました、そして、私はそれが' 0:00:00.020000'のような小さな値であるように見えます。 – Alexei
@Alexei:これがあなたの実際のクエリであれば、 'username' = 'MyUser'; ':-) – dnoeth
Damnの後に'; 'を削除してください。 SQLアシスタントでそれを逃した。それはもちろん、それなしで動作します。ありがとう。 – Alexei