問題タブ [group-by]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql - SQL を使用したクエリの圧縮
名前、価格、数量、特定の日付の 4 つの項目を含むテーブルがあります。
日付ごとに多くのエントリがあります。
どうすればそれを次のように要約できますか:
sql-server - GROUP BY句はある環境では機能するが、別の環境では機能しない
私の目の前には絶対に不可解なケースがあります。A と B の 2 つのデータベース環境があり、環境 B は A のバックアップから作成されています。かなり単純なクエリを実行しています。
このクエリは、請求書の残高がゼロ以外のユーザーのリストを返します。環境 A の結果は次のようになります。
環境 B での結果は次のとおりです。
環境 A ではクエリは正常に機能しますが、環境 B では GROUP BY 句が完全に無視されているように見えます。
SELECT 句と HAVING 句からコメントアウトすると、クエリは期待どおりに機能するSum(invoices.Amount)
ため、フィールドに確実に接続されinvoices.Amount
ます。
AをバックアップしてBに復元しました.SqlDelta(データベースの差分ツール)はデータベースが同一であることを示しているため、データの問題ではなく、構成の問題である必要があります-しかし、どこにあるのかわかりません見る。
関連する場合、両方の環境が Windows Server 2003 で SQL Server 2000 を使用しています。両方の環境は、2 つの別個のサーバー、SQL Server の別個のインスタンス、および Windows Server 2003 の別個のインスタンスにインストールされます。
invoices.Amount
SQL サーバーがフィールドをグループ化しない原因は何ですか?
mysql - MySQL: 日付でグループ化 RANGE?
OK、2 つの列を非常にうまくグループ化する次のクエリがあります。
しかし、日付だけでなく日付 RANGE でグループ化したい場合はどうすればよいでしょうか? それを行う方法はありますか?
ありがとう!
編集:これらの答えはかなり複雑で、私が望むものはずっと簡単に達成できると思うので、もう一度説明させてください。たとえば、期間 ">= 20090601 AND <= 20090604" のキーワードを選択したいとします。しかし、繰り返されるキーワードを取得する代わりに、キーワードのオンスとそれが何回発生したかだけを取得したいと思います。たとえば、これの代わりに:
私は得るでしょう:
sql-server-2005 - 一時テーブルからデータをグループ化する方法
fileid
主キーであるテーブルに対応する一時テーブルを1つ作成しましたが、5つの行があります。カウントを5として取得したい。それぞれに対応するカウントを取得するには、どのクエリを作成する必要がありますfileid
か?
sql - MySQL テーブルから 10 個の最新の DISTINCT IP を取得する方法は?
ページヒット (正規化) データを含むテーブルがあり、最新の 10 個の一意の IP を取得する必要があります。
私はこのようにそれをやろうとしました:
この結果が得られるはずです:
これは、サイトへの最新の一意の訪問者です。
しかし、その結果の代わりに構文エラーが発生します。
したがって、次のクエリを実行する必要があります。
大丈夫だと思ったもの。しかし、次の結果が得られます。
しかし、それはすでにグループ化された後に日付順を設定するため、テーブル内の最初の一意の IP を取得します。これは最も古いものでもあります。
したがって、表は次のようになります。
しかし、次の方法でグループ化する前に、次のようにしたいと考えています。
私はそれでPHPを使用しているので、誰かがPHPソリューションで結果を得る方法を知っているなら.
事前に乾杯:)
mysql - GROUP BY を使用すると、MYSQL で誤った行が表示される
私は2つのテーブルを持っています:
ここで、チケットはサポート スタッフと顧客の間の電子メールのスレッドを表し、記事はスレッドを構成する個々のメッセージです。
各 ticket_id の受信時間 (UNIX タイムスタンプとして表される) が最も高い記事を探しています。現在使用しているクエリは次のとおりです。
例えば、
しかし、結果は、受信時間が最も長い記事を探しているのではなく、記事 ID が最も小さい行のように見えます。
どんなアドバイスでも大歓迎です!
sql-server - サブクエリを使用してグループ化するときの SQL Server 2005 エラー
SQL Server 2005 を使用して、サブクエリを含む case ステートメントに基づいてグループ化しようとしていますが、エラーが発生します (「各 GROUP BY 式には、少なくとも 1 つの列参照が含まれている必要があります。」)。私はそれを非常に簡単に回避できますが、誰かがエラーを説明できますか? #header.header への列参照があります。
[編集] (コメントに応じて) 相関サブクエリと非相関サブクエリに注意してください:
linq-to-sql - 結合とグループ化/カウントを使用したクエリを LINQ to SQL に変換するのに助けが必要
このクエリをlinqからsqlに変換するのに助けが必要です:
これが私がこれまでに持っているものですが、グループ化/カウントを機能させる方法がわかりません。また、Linqerツールも機能しません...
これを理解できる人のおかげで、私はまだlinq to sqlの初心者なので、1日あたり2〜3個の新しい質問を考えています!! :)
mysql - MySQL-GroupByにない列を選択する
既存のアプリケーションに機能を追加しようとしていますが、次のようなMySQLビューに出くわしました。
OK、いくつかの集計関数があります。グループ化するため、personIDを選択できます。ただし、集計関数に含まれておらず、GROUPBY句の一部でもない列も選択しています。これはどのように可能ですか?値はグループごとに確実に一意ではないため、ランダムな値を選択するだけですか?
私の出身地(MSSQL Server)では、それはエラーです。誰かがこの動作を私に説明できますか、そしてなぜそれがMySQLで許可されているのですか?