問題タブ [rank]
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.
mysql - 行ランク番号の割り当て
私はデータベースを持っています。その列を更新したい。列には、別の列のアルファベット順に従って昇順で一意の整数が含まれている必要があります。
申し訳ありませんが、おそらく次のような整数が必要です。
このランク/順序をmysqlまたはsqlクエリで設定する合理的に簡単な方法はありますか?
sql - T-SQL Update else Rank() パーティション関数を使用してストアド プロシージャを挿入する (SQL 2008)
日付でパーティション分割し、日付ごとに 1 つのフィールドをランク付けするストアド プロシージャがあります。これはテスト済みで、正しく動作します。現在のストアド プロシージャは、行が存在する場合は行を削除してから、単に INSERT を実行します。これを、行が存在する場合は更新し、そうでない場合は新しい値を挿入するストアドプロシージャに変えたいと思います。Update else Insertに関する多くの投稿を見てきましたが、正しい更新構文を取得できませんでした。
テーブル定義は
UPDATE else INSERT に変換したいストアド プロシージャは次のとおりです。
ストアド プロシージャのサンプル入力:
クエリ前のサンプル テーブル データ:
ランキング結果:
ストアド プロシージャの実行後のサンプル テーブル データ:
誰でもこれがどのように行われるかの例を提供できますか?
.htaccess - .htaccess は、Google が自分のドメインに PageRank を設定するのを何らかの形で妨げます
一部のプロジェクトで 2 年以上前から、すべてのドメインで次の .htaccess コードを使用していますが、少なくとも「1」バーの Google PageRank を取得した Web サイトはありません。このコードを使用していないすべての Web サイトで、適切な PageRank を取得しています。
私が間違っていることを教えてください:
この .htaccess を使用している私のウェブサイトのいくつか:
mysql - MySQL ヘルプ: 別の列の順序に従ってランクを設定する更新クエリの最適化
こんにちは StackOverflow コミュニティ:
状況
各レコードの比較方法に従って、テーブル内のすべてのレコードのランクを設定する更新クエリを作成しています。表の例:
したがって、この表でcost
は、ランクを決定する際に最も重みがあり、次に が続きbudget
ます。したがって、レコード #2 が上位にランク付けされ、レコード #3 が 2 番目、レコード #1 が最後になります。ご覧のとおり、2 つのレコードの が同じcost
である場合budget
、引き分けになります。
今、そのような「重み」を簡単に追跡するために、とrank_score
の連結を保持する列を作成しています。したがって、上の表の は次のようになります。cost
budget
rank_score
これrank_score
は次のように入力できます。
問題
これまでのところすべて順調です。しかし、ここで問題が発生します。rank
並べ替えなどのいくつかのために整数のみの列が必要ですが、何よりもユーザーに自分の記録のランクを表示するために必要です。もちろん、このrank
列は、rank_scores の降順と等しくなります。rank
しかし、サブクエリやphpでのループなどを行わずに、単一の更新クエリでこの列を計算する方法を見つけることができません.
私が試したこと
したがって、最初は次のrank_score
ような計算を取得しようとしていました。
次に、これらすべてのrank_scoresをphpでループして、次のようなクエリを作成します。
... もちろん、このサンプルの更新クエリは完全ではありませんWHEN THEN END
。テーブル内の各レコードに対してより多くの句があるためです。言うまでもなく、何千ものレコードがあると予想される場合は特に、これは見苦しいものです。
したがって、結論として、私はすでに を計算する方法を持っていますが、同じクエリで、または少なくともそのクレイジーな php ループと句を実行せずに (= ランク スコアの降順で)rank_score
計算したいと考えています。rank
CASE WHEN THEN END
これを読んで考えてくれてありがとう;)
明確化
@ SJuan76 の発言の明確化: ユーザーに一度に一定量のレコードが表示される場合があるため (たとえば、ユーザー ページ: SELECT * WHERE user_id = 333
、1、3、または 8 レコードを取得できる)、 php 経由でランクを割り当てることはできません。彼は、各レコードのランクを知る必要があります。その場合、php を介してランクを割り当てることは機能しません。そのようなランクは、テーブル内のすべてではなく、フェッチされたレコードに関連するためです。
mysql - MySQL は日付間のプレイヤーのランクを取得します
私はプレーヤーのテーブルを持っています:
プレーヤーのランク (ポイントに基づく) を取得するために、次の mySQL を選択しています。
それは正常に動作します。したがって、プレイヤー ID 1 のランクは 5 です。
しかし、過去 30 日間 (今日が 2011 年 7 月 10 日であることを考えると) に最後にオンラインだったプレイヤーだけを考慮したいと思います。このようにすると、プレーヤー ID 1 のランクは 3 になります。これは、プレーヤー 3 と 5 がランクから除外されたためです。
どうすればこれを行うことができますか?
sql - SQL DENSE_RANK を使用して重複を判別する
OrderID列を無視して、同じ数量のすべての注文を見つけようとしているデータの例を次に示します
そのため、SQLでDENSE_RANK関数を使用しました
以下のデータを取得するには
そのため、ランキングに基づいて、異なる orderID で同じ数量を持つレコードを除外し、それらを 1 つとして扱うことができました。これまでのところ、すべてが順調で、満足しています。しかし、別のクレイジーな要件の 1 つは、この形式の集計は数量の最初の変更に対してのみ実行する必要があるということです。たとえば、上記のデータがたまたま下のような場合
同じ SQL が結果を生成します
しかし、私は結果が必要です
最初の数量変更後は、すべてのレコードのランキングが 1 のままであることに注意してください。
上記の動作を得るために SQL を微調整することは可能ですか?
提案をありがとう。
php - PHP/MySQLを使用したFAQ/KBに「この回答は役に立ちました」を追加する必要があります
既存の値をランク付けする方法を見つけましたが、しばらく経ちました。「これは私の質問に答えました」機能をKB/FAQに追加する最善の方法がわかりません。私の最大の問題は、複数のクエリを個別のクエリに分割して、この機能をプラグインできるようにすることだと思います。データベースに挿入を追加するだけで、誰かがボタンをクリックするたびに+1されると思いますが、しばらくの間、私はこれを以前に行ったことがありません。
さらに明確にするために、私はこれをFacebookアプリ内で使用しているので、より良い回答を生成するために、知識ベースの検索によって生成された個々の回答を評価する必要があります。すべて動的であるため、静的ページはありません。
これまでのところ役立つ答えは見つかりませんでした。
r - プロットの R ランク ポイント
プロットについて質問があります。たとえば、変数 a と b があり、これを R にプロットすると要点がわかります。さて、最高点・最高点の範囲を作りたいと思います。ポイントでランキングを生成する方法はありますか? 私は多分何か意味があると思いましたか?
ありがとう!
mysql - MYSQL でのパーセンタイル/ランクの効率的な割り当て
次のような非常に大きなテーブル (400,000 行以上) がいくつかあります。
列の各行に、「現在の行の値M1_Percentile
以下の M1 値を持つ行の割合」を表す値を割り当てる必要があります。M1
言い換えれば、私は必要です:
私はこれをうまく実装しましたが、あまりにも遅すぎます。誰かが次のコードのより効率的なバージョンを作成できる場合は、本当に感謝します!
行数が表示される行数 (10 行) に制限されている場合、これは上記のクエリの (正しいが遅い) 結果です。
400,000 行全体で同じ結果を生成するには、さらに時間がかかります。