問題タブ [sql-limit]

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.

0 投票する
3 に答える
276 参照

mysql - 特定の制限を超えると、MySQL レコードが返されませんか?

250 レコードを返す次のクエリがあります。

上記を実行すると、合計 250 のレコードがあるにもかかわらず、レコードが表示されません。LIMITを に変更したときにのみレコードが返され始めLIMIT 197,10、レコードの 1 つが表示されます。

なぜこうなった?

0 投票する
3 に答える
492 参照

mysql - SELECT * vs SELECT * LIMIT (パフォーマンス)

t1列を持つテーブルに 10,000 件を超えるレコードがありますuid
Nowで5つのレコードがuid='xyz'
あり、2つのうちどちらのアプローチが優れていますか

また

* uid が xyz のレコードは 5 つだけです *

0 投票する
1 に答える
4729 参照

hql - HQL はどのようにすべてのグループのレコード数を制限できますか?

シナリオは次のとおりです。表recordは次のとおりです。

HQL: の結果は次のselect * from record where B = 1 and C < 3 limit 2ようになります。

しかし、私が欲しいのは:

つまり、返されるレコードの最終的な数を制限するのではなく、すべての条件でレコードの数を制限します。

これは本当にhive だけで行う必要があります。誰か私にアイデアをくれませんか?どうもありがとう!

要約 すると、この問題を解決する良い方法があります: http://ragrawal.wordpress.com/2011/11/18/extract-top-n-records-in-each-group-in-hadoophive/

0 投票する
2 に答える
801 参照

mysql - MySQL: ランダムな制限を指定できますか?

SQL (MySQL) で制限数をランダム化する方法はありますか?

私ができるようにしたいのは、サーバー側のスクリプトを作成せずに、クエリで乱数の結果を取得して、挿入サブクエリで使用することです。架空の図として実行できるようにしたいクエリは次のとおりです。

もちろんそれはうまくいきませんが、制限数をランダム化する別の方法はありますか? 限られた一連の結果をランダム化する例はたくさんありますが、ネット上でランダムな制限を設定することについては何も見つかりません。

0 投票する
0 に答える
88 参照

php - Union All のサブクエリでの Order By、Limit、および Offset の配置

私は約を保持する次の表を持っています。700K レコード:

次のクエリで見られるように、クエリを実行して 10 個の結果を取得します。

このクエリには 196 秒かかるため、いくつかのサブクエリに制約 ( ORDER BY、 )を設定する必要があることは明らかです。LIMIT

私はそれらを追加する方法について混乱していますLIMITが、次のPHPで動的に選択します:

ページシステムを使用して結果を表示しているので、次の目的で機能するものが必要です。

  • ~700K 行からの結果 0 から 9
  • ~700K 行からの結果 10 から 19
  • ~700K 行からの結果 699990 から 699999

結果セットの末尾のみが必要な場合は、20 レコードが必要だとします。次に、レコードを失わないようにするために、すべてのサブクエリ20 * [subquery_count]でレコードを取得する必要があります。
しかし、オフセットも考慮する必要があるので、どうすればよいでしょうか?

0 投票する
1 に答える
130 参照

mysql - LIMIT がクエリの速度を低下させないようにする方法は?

10万行のテストテーブルを作成しました。このクエリの実行時間:

です0.032sGROUP BYとしてインデックス付けされた整数列のステートメントを追加するNormal,BTREEと、クエリの実行時間は次のようになります。

EXPLAIN 出力:

です0.073s。のせいで実行時間が2倍になりましたがGROUP BY、それは正常だと思いますか?私が持っている質問は、なぜLIMIT次のようにクエリに追加するのかということです:

EXPLAIN 出力:

実行時間を0.301s? これは 4 倍以上の速度低下です。

私は SQL に非常に慣れていないので、これはまったく正常なことかもしれませんが、返される行数を制限するとクエリの速度が大幅に低下することは直感に反するように思えます。

質問:

  1. これは正常ですか?
  2. LIMIT がクエリの速度を大幅に低下させないようにする方法はありますか?