2017-08-03 2 views
-2

こんにちは、私はsqlを使いこなすのが初めてです。私はTag_countは=それが変更された回数になりたい特定のIDのサブフィールドの変更をカウントする

select distinct c.container_id, c.CONTAINER_CLOSED_DATE, c.GROSS_WEIGHT, 
pt.PACKAGE_TARE_WEIGHT, pt.PACKAGE_DESCR, count(wh.MODIFIED_DATE) as 
Tag_count, 
(c.GROSS_WEIGHT-pt.PACKAGE_TARE_WEIGHT)as True_weight,c.NET_WEIGHT 
from otp_waste_container wc, wts_container c, WTS_PACKAGE_TYPE_LU pt, 
WTS_CONTAINER_HISTORY wh 
where wc.container_id = c.container_id 
and c.CONTAINER_CLOSED_DATE = '24-MAY-17' 
and c.MANIFEST_ITEM_ID is not null 
and c.PACKAGE_TYPE_ID = pt.PACKAGE_TYPE_ID 
order by c.container_id; 

を日付がテーブルに変更された回数のカウントを取得しようとしています。

ありがとうございました。

select wh.CONTAINER_ID, count(wh.MODIFIED_DATE) as tag_modified 
From WTS_CONTAINER_HISTORY wh 
GROUP BY wh.CONTAINER_ID 

答えて

0

あなたがGROUP BY句を追加する必要が

select wh.CONTAINER_ID, count(wh.MODIFIED_DATE) as tag_modified 
From WTS_CONTAINER_HISTORY wh 
group by wh.CONTAINER_ID; 

これはCOUNT(*)を使用するのと同じです。

select wh.CONTAINER_ID, count(distinct trunc(wh.MODIFIED_DATE)) as tag_modified 
From WTS_CONTAINER_HISTORY wh 
group by wh.CONTAINER_ID; 
0

先験的必要group by

+0

こんにちは:あなたが唯一の日付(ただし時間コンポーネント)を心配している場合、

select wh.CONTAINER_ID, count(distinct wh.MODIFIED_DATE) as tag_modified From WTS_CONTAINER_HISTORY wh group by wh.CONTAINER_ID; 

または:あなたが実際にしたいかもしれません!助けてくれてありがとう。私はもう一つの質問がありました。 に c.CONTAINER_CLOSED_DATE、 c.GROSS_WEIGHT、pt.PACKAGE_TARE_WEIGHT、 pt.PACKAGE_DESCR、カウント数(wh.MODIFIED_DATE)Tag_count、 c.NET_WEIGHTとしては、 "ここでの実装"、明確なc.container_idを選択するだから私は作りたかったのです(c.NET_WEIGHT/Tag_count)と等しい新しい列は、どうやってこれを調べることができますか?このようにtag_countが使用されるのは好きではないので、 – turtlesallday

+0

@turtlesallday。 。 。新しい質問は質問ではなく、コメントでお願いします。 –

関連する問題