2017-10-26 11 views
0

重複した行を同じ人でグループ化し、そこにいくつの行があるかをカウントしたい。 私は、このSQLコマンドを使用していますが、それはすべての行を表示されていない、私はいくつかの新しい行を見ることができますが、このコマンドでは私が使用しているSQLコマンドがある を示すされていません。過去24時間に重複した行をグループ化する

SELECT seller, count(id) AS value_sum , type, date, sold, type2 
FROM accounts 
GROUP BY type, seller 
HAVING (FROM_UNIXTIME(date) >= now() - INTERVAL 1 DAY) AND sold='0' 
ORDER BY rand() 

はどこですいくつかの行が表示されないという問題?

+1

あなたの質問を編集し、サンプルデータと希望する結果を提供してください。 –

+0

はい、サンプルデータと期待される結果をください。あなたは "重複した行"とは何ですか? 「行をグループ化したい」という意味はどうですか? –

答えて

0

私の最初の反応は、having句がwhere句であることです。次に、SELECTには、GROUP BYにある集約されていない列のみを含める必要があります。

あなたのように重複行でsellersを見ることができます:

SELECT seller, count(id) AS cnt 
FROM accounts 
WHERE (FROM_UNIXTIME(date) >= now() - INTERVAL 1 DAY) AND sold = 0 
GROUP BY seller 
ORDER BY rand(); 

これは、あなたが記述されている問題を解決すると思われます。

関連する問題