問題タブ [sqlfiddle]
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 - SQLfiddle Errno: 150 - 外部キーの問題
外部キーを設定しようとすると、エラー番号 150 がスローされます。
スキーマの作成に失敗しました: テーブル 'db_2_f856e.urlnames' を作成できません
これはコードです:
誰かがそれが機能しない理由を説明できますか?
ありがとう
mysql - 右側の要素で AND を使用して左外部結合を理解しても、エントリが重複する (SQL フィドルを使用)
私の質問は、私の思考の問題は何ですか?
左結合が思ったように機能しないのはなぜですか?
詳細情報は下にあります。
左外部結合を使用するときに直面している問題を表示するこのSQLフィドルがあります
構造
選択する
私が取得したいもの:
によって挿入される値
つまり、書き言葉では、プロジェクトとして 10 を持つすべてのレコードと、プロジェクト ID が 10 のレコードと同じオブジェクト ID を持つすべてのレコードです。
なんで?
これはチェンジセット テーブルです。ユーザーがオブジェクト名を変更しているときに Enter キーを押します。これにより、変更の形式でエントリが生成されます。これらの変更は、悲しいことに、プロジェクト ID が null になる可能性があります。ただし、オブジェクト ID は一意です。
私は何を考えていますか?
私は考えました: project_id NULL を持つすべてのエントリがあります。左側には、project_id が 10 のすべてのレコードがありますobject_id
。しかし代わりに、name1、name2、および name3 ではなく、name4 と name5 の複製を取得します。
なぜだめですか?
mysql - 1 つの列の値が異なるデータベースから行を選択し、最新の 5 つに制限します
私は画像のデータベースを持っています。画像の行は、それらを閲覧した人の最後の IP で更新され、現在のタイムスタンプで date_updated 列を更新します。最後に表示された 5 つの画像を取得しようとしていますが、個別の IP アドレスのみを取得しようとしています。
フィドル: : http://sqlfiddle.com/#!2/d5b05/16
望ましい結果: このデータ セットから選択する際の望ましい結果:
疑似 select ステートメントの場合:
SELECT * FROM image WHERE updated_by_ip IS DISTINCT ORDER BY date_updated DESC LIMIT 5
クローゼットの結果:
私が思いつくことができる最高のものは次のとおりです。
これは私に与えます:
そのうち私ができること
ただし、一連の後処理や追加のクエリを実行せずにこれを行う方法を見つけたいと考えていましたが、updated_by_ip と date_updated による選択はあまり安定していないようです。
ありがとうございました。
mysql - パラメータを指定しない MySql ストアド プロシージャ呼び出しは、SqlFiddle でエラーを返します
sqlfiddleで MySql スキーマ用に次のストアド プロシージャを作成しました。
を使用して out パラメータにアクセスするクエリを実行すると、
次のエラーが表示されます
ResultSet は UPDATE からのものです。データなし。
何が間違っているのかわかりません。提案してください。
私はこれを参照として取っていますMySQL create store stored procedure syntax with delimiter
SQL フィドル リンク: http://sqlfiddle.com/#!9/a2182/6
sql - どの制約に違反していますか?
Oracleでalter tableステートメントを作成しようとしており、SQLFiddleを使用してテストしていますが、非常にあいまいなエラーが発生しているため、ここでヘルプを探しています. SQLFiddle は他に 2 つのエラーを見つけたので、表示されているエラーは有効であると思います。
ここに表があります:
テーブル変更ステートメントは次のとおりです。
これが私が見るエラーです:
ORA-02091: トランザクションがロールバックされました ORA-02290: チェック制約 (SYSTEM.DEFERRED_4_D0560_CK) に違反しました
SQLFiddle へのリンク: http://sqlfiddle.com/#!4/d0560/2
mysql - CREATE FUNCTION で宣言ステートメントを使用できません
declare [variable]
ステートメント内でステートメントを使用しようとしていますCREATE FUNCTION
。
私のコードは
コードは宣言を使用せずに正常に機能しましたが、宣言を使用するとエラーが発生します。
SQL 構文にエラーがあります。使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください...
関数またはストアド プロシージャ内で宣言ステートメントを実際に使用するにはどうすればよいですか?