問題タブ [select-insert]
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.
php - MySQL多対多の一意のキーと存在する場合は更新/選択それ以外の場合は挿入
MySQLデータベースで多対多の関係を築くことを目標に、構築する別のブリッジに到達しました。
現在のテーブル:
ユーザー(id、name)
タグ(id、name)
User_Tags(user_id、tag_id)
目標は次のとおり
です。タグを取得して、一意の制約があるデータベースに#fb
挿入する機能が必要です。タグが存在する場合は、タグを返します。Tags
name
id
tag.id
と現在のユーザーをにuser.id
挿入したいと思いますUser_Tags
。User_Tags
ユーザーの最も一般的に使用されるタグを追跡し、使用頻度順にリストに表示できるようにしたいので、テーブルに固有の制約はありません。
私は現在、プリペアドステートメントを使用してPHPでこのプロジェクトを開発しています。
さらに、私のユーザー数はまだかなり少ないため、パフォーマンスは現在問題ではありませんが、着実に成長しており、将来的に問題になる可能性があります。
sql - オブジェクトごとにセルをカウントアップ
もう一度問題が発生しました:D最初に少し情報があります:あるテーブルから別のテーブルにデータをコピーしようとしています(構造は同じです)。ここで、1つのセルをインクリメントする必要があります。グループごとに1から始まります(履歴のように)。
私はこのテーブルを持っています:
(my_Id、my_NumはネストされたPKです)
新しい行を挿入する場合は、の値がmy_id
すでに存在するかどうかを確認する必要があります。
これが当てはまる場合はmy_Num
、このIDに次を使用する必要があります。
私は私のテーブルにこれを持っています:
ここで1の行を追加するmy_Id
と、行は次のようになります。テーブルにこれがあります。
これは非常に簡単に聞こえますが、SQLで作成する必要があり、SQL Serverでも同じ問題が発生し、これを使用しました。
副選択で行が見つからない場合、この選択はnullを返します
ケースでmaxを使用できるようにする方法はありますか?nullを返す場合は、0または1を使用する必要がありますか?
編集:今これを使用しています:
THXからバーラトとOMGポニーへ
オーロに挨拶
mysql - MySQL 挿入選択。カウントで挿入を注文しますが、実際にはカウント番号を挿入しません
変なタイトルでごめんなさい!
「SELECT」部分に COUNT() 関数が含まれている (HAVING 句を利用するため) MySQL INSERT SELECT クエリを実行することは可能ですか? これにより、INSERT 部分に一致しない列数が作成されます。
例えば:
TABLE my_log に、タイプ 10 の割り当てを 10 件完了したユーザーの日付を挿入したいと考えています。実際にはこれを少し拡張しているので、COUNT と HAVING を使用して、10 件またはより多くの課題。しかし、私の問題は、COUNT() 関数のために宣言された 2 列に 3 列を挿入しようとしているということです。挿入。
助けてくれてありがとう:)
sql-server - SQL挿入コマンドのあいまいさ
このようなSQLコマンドを使用しようとしていますが、いくつかの明らかな理由で機能していません.このタイプのコマンドの解決策を教えていただけますか?
android - AndroidSQLite挿入-選択
テーブルに行を挿入するには、次の2つの方法があります。
- execSql、それを使用して、SELECT-INSERTを使用してSQLステートメントを実行できます。ただし、新しい行のIDは返されません。
- さまざまな挿入-ここでinsert-idを取得できますが、別のテーブルの置換値を使用して挿入クエリを作成することはできません。
クエリを2つに分割できますが、1つのクエリよりも遅くなりませんか?
mysql - Inside InsertStatement-MySQLCursorsを選択します
いくつか試しましたが、解決策が見つかりませんでした。どういうわけか、この結果を得ることができました。
クエリは次のとおりです。
以下の結果が得られました:
staff_idに対して(NULL)を取得していますが、staff_idを取得するにはどうすればよいですか?挿入ステートメントで宣言された変数「a」を使用しようとしましたが、その時点ではstaff_idしか取得できず、他の2つのフィールドは取得できませんでした。また、selectInsideinsertステートメントからstaff_idを取得できません。問題があります。
ここで必要なのは、変数'a'のstaff_idをその一時テーブルに挿入する必要があることです。
注:私はこのストアドプロシージャに本当に慣れていませんが、なんとかしてここまで管理されています。このソリューションを含め、SelectInsideInsertの使用方法の詳細を取得できれば便利です。
mysql - SELECTされた出力を取得してMySQLの新しいTABLEに書き込むにはどうすればよいですか?
重複の可能性:
テーブルへのデータの挿入
メインのTaxテーブルから、計算を実行して出力を新しいテーブルに書き込めるようにしたいと思います。
avgagiという名前の新しいテーブルには、zipcodeとavg_agiの2つのフィールド(列)があります。
新しいテーブルを作成する方法は知っていますが、上記の選択から出力を取得して新しいテーブルavgagiに書き込み、zipcodeとavg_agiを入力する方法がわかりません。ありがとう!
mysql - 重複した SELECT ステートメントを削除する方法はありますか?
簡潔にするために、numbers
2 つの列を持つテーブルがあると仮定しましょう: id
& number
:
number
列を自動インクリメントしたいのですが、 100 に達した後は 1 から再開し、次の要件を満たします。
- まだレコードがない場合は、
number
1 に設定します。 - テーブルにすでにレコードがある場合:
- 最後のレコード
number
が 100 未満の場合はnumber
、その + 1 に設定します。 - 最後のレコード
number
が 100 件以上の場合はnumber
1 に設定します。
- 最後のレコード
これが私がこれまでに持っているものです:
これは機能しますが、2 つの同一のSELECT
クエリを使用します。
重複を削除する方法はありますSELECT
か?
PS私はクエリ内でこれをすべてやりたいです。トリガーやストアド プロシージャはありません。
sql-server - OUTPUT 句を使用して、SELECT INSERT ステートメントから元の ID と新しい ID のマッピングを取得する
私は2つの列を持つテーブルを持っています:
SELECT INSERT ステートメントを使用してデータを複製したい:
ここにトリッキーな部分があります-元のIDと新しいIDの間のマッピングテーブルを取得したい:
OUTPUT 句を使用すると思いますが、何らかの理由で機能しません。
関連する質問:
select を使用した SQL 挿入は複数の ID を返すことができますか?
テーブル パラメーターを使用して挿入し、ID 値を取得することは可能ですか?