問題タブ [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.
sql - グループあたりの最小行数
以下は私の質問です:
友達の投稿を検索し、評価と日付で並べ替えます。このクエリに実装されたウィンドウ関数により、テーブルのMAX
フィールドに従って、各フレンドに対して返される行数を制限できFriends
ます。
ただし、フィールドもありますMIN
。これは、特定の友人のクエリから必要な投稿の最小数を指定するために使用されます。そんなことがあるものか?
また、これらのタイプのクエリには SQL が最適なオプションなのだろうか? 私はすでに Neo4j Graph データベースを試しました。これは良い解決策のように思えましたが、2 つの別々のデータベースを使用することは避けたいと思います。
スキーマ:
次のデータがあるとします。
(post_id, title, rating, date, friend_id)
したがって、可能であれば、次の条件との組み合わせを確認したいと考えています。
id
=2の友人からの 1 ~ 3 件の投稿id
=3の友達からの 0 ~ 5 件の投稿id
=4の友人からの 2 ~ 10 件の投稿
基本的に、私の友人がfriend_id=2
1 つ以上の記事を投稿している場合、少なくとも 2 つの記事が必要です。彼が 3 つ以上の記事を投稿した場合、私は 3 つを超えないようにします。
mysql - 複数のORDER BYを使用したMysqlページング
mysql ページャーに問題があります。
- すべての行をカウントすると 164 になります。
- pro_type - 3 つの異なる整数値にすることができます。
- pro - 整数値;
- cr_date - 日付。
これが私のクエリです:
- 2 番目のクエリ結果には、最初のクエリ結果と重複する行があります。
- どちらの結果にも 1 行も数行も含まれていません。
- 最初のクエリの行数は 100 で、2 番目のクエリの行数は 64 であるため、結果の数は問題ありません。
- 制限が 200 のクエリは、すべての有効な行を返します (164 は重複していません)。
誰かが知っているかもしれませんが、その場合の ORDER BY & LIMIT OFFSET の問題は何ですか?
ありがとうございました。
sql - SQL Express 2008 でキーワード「LIMIT」を使用して行を取得できますか?
これを行いたいのですが、SQL Express 2008 は「LIMIT」の部分が気に入りません。
mysql - mysql: 注文 -> 制限 -> 合計...可能ですか?
私は次の問題でそれを失っています:
参加者とポイントを含むテーブルがあります。各参加者は最大 11 点のエントリを持つことができ、上位 6 点の合計のみが必要です。
この例では、3 つのうちの上位 2 つが必要であるとします。
結果として、私は次のようなものが欲しい
(結果のポイントによってDESCを注文する必要があります)
これはmysqlでまったく可能ですか?1つのクエリで?
ああ、結果の参加者 ID は、別の「partcipant」テーブルから実名に解決する必要があります。
しかし、それはある時点で結合することで実行できるはずです...私は知っています...
sql - 一致するものがない場合は最初のレコードを選択
PostgreSQLで、ある基準に基づいて行を選択したいのですが、基準に一致する行がない場合、最初の行を返したいです。テーブルには実際には序数の列が含まれているため、タスクはより簡単になるはずです (最初の行は序数が 0 の行です)。例えば:
しかし、この場合、一致するレコードの順序を保証する方法はなく、それらを順序付けるものは何もありません。SELECT
単一のステートメントを使用してこれを行う方法は何でしょうか?
sql - 結合からのグループごとの行数を制限する (1 行にしない)
これらのテーブルを考えると:
各店舗の最も長く雇用されている 15 人の従業員 (たとえば、最低の 15 人としましょうemployee_id
)、または 15 人の従業員がいる場合は店舗のすべての従業員をリストしたいと考えていますcurrently_employed='t'
。join句でやりたい。
これを1行のみORDER BY
、通常は最小または最大(単一の最長雇用従業員)で行う人々の例をたくさん見つけましたが、基本的には、結合内で anと aを結合したいと考えていLIMIT
ます。これらの例のいくつかは、次の場所にあります。
また、このストアごとの適切な例を見つけました (私はありません。約 5000 のストアがあります)。
また、 andTOP
の代わりに使用できるが、PostgreSQL には使用できないことも確認しました。ORDER BY
LIMIT
従業員テーブル内で個別に作業することが可能であれば、2 つのテーブル間の結合句がこれを行うための唯一の (または必ずしも最良の方法でさえある) とは思わないstore_id
ので、他のアプローチにもオープンです。後からいつでも参加できます。
私は SQL に非常に慣れていないので、動作中の原則を理解するのに役立つ理論的背景や追加の説明が欲しいです。
php - スキップしてクエリを制限するLaravel
skip() および take() 関数を使用するクエリを作成しようとしていますが、何らかの理由で、本来offset 0
あるべきではなく最後に追加し続けますLIMIT 0,0
コード:
そして、これは私が得るエラーです
java - Java でプリペアド ステートメントを使用して LIMIT コマンドを使用すると、MySQL 構文エラーが発生する
Java でコードを書いていますが、このコードを実行するたびに MySQL テーブルの次の行を取得したいと考えています。このコードを 2 回目に実行するのはこれです。
しかし、それは私にこのエラーを示しています:
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: SQL 構文にエラーがあります。1 行目の ''1','2'' 付近で使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください。
mysql - MySQL: 特定のフィールドの制限
次のようなフィールドを持つテーブルがあるとします。
そして、以下のように Parent_ID が 1、3、4 の上位 3 つの異なる親 ID のみを持つクエリを取得したいと考えています。
MySQLを使用してこれを取得するにはどうすればよいですか。LIMIT機能は使えますか?誰でも私を助けることができますか?
ありがとう。