問題タブ [mysql-error-1093]
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エラー1093-FROM句で更新するターゲットテーブルを指定できません
story_category
データベースに破損したエントリのあるテーブルがあります。次のクエリは破損したエントリを返します。
私はそれらを実行して削除しようとしました:
しかし、次のエラーが発生します。
#1093-FROM句で更新するターゲットテーブル'story_category'を指定できません
どうすればこれを克服できますか?
mysql - 挿入または更新と同じテーブルから選択
明らかに以下は誤りです。
私は値を取得します:
SQL クエリ:
MySQL は次のように述べています。
1093 - FROM 句で更新するターゲット テーブル 'aTable' を指定することはできません
したがって、ビットマップ テーブルを作成しようとしています。各行は 1 ビットに対応し、「マップ」値を持ちます。
テーブルに挿入するには、2 つのクエリを実行するのではなく、1 つのクエリを実行したいのです。どうすればいいですか?
誰もこれについてコメントしていませんが、ビットマップを作成しようとしているので、^ 2 ではなく * 2 にする必要があります。私の間違いです。読んだ。
mysql - この MySQL クエリを修正して機能させるには?
次のクエリがあります。
ただし、実行しようとすると次のエラーが発生します。
このクエリが機能するように修正するにはどうすればよいですか?
mysql - HQL での自己参照更新
HQL に次のクエリがあります。
Hibernate はクエリを正しく解析して SQL を生成しますが、データベース (MySQL) は次のエラーで失敗します。
FROM 句で更新対象のテーブル 'ProjectFile' を指定することはできません
問題は、更新されるテーブルが同じコンテキストでクエリされていることのようです。HQL クエリを書き直して、MySQL で正しく実行できる SQL を生成する方法はありますか? もう 1 つのアプローチは、中間テーブルを作成することです。これはまさに私が避けようとしているものです。
mysql - SQL:ネストされたFROM句のUPDATEステートメントでターゲットテーブルを使用する
次の列を持つ(mysql)データベーステーブルがあります。
Max(UPDATE_COUNT)の値に、テーブルの行に対して実行された更新の累積数を反映させたい。たとえば、空のテーブルから始めます。
等..
したがって、更新されているか挿入されているかに関係なく、どの行でも、各行で挿入または更新される更新カウントの値はmax(update_count)+1です。
「mytableからmax(update_count)を選択」という考え方は、実行された挿入/更新の総数を表します。
update_countの値を自動的にインクリメントするinsertおよびupdatesqlステートメントを作成したいと思います。
ただし、これは有効なSQLではありません。更新ステートメントには、同じテーブルから選択するfrom句が含まれていない可能性があります。mysqlのエラーは次のとおりです。
この制限を回避する方法について何か提案はありますか?
mysql - 別のテーブルからテーブルの値を更新する
クエリのインデックス/キーとしてvarchar属性を使用していることに気付きました。これにより、クエリのパフォーマンスが低下します。正確なテーブルを調べて整数IDを取得し、新しい列に配置された新しいintFKで世帯テーブルのレコードを更新しようとしています。これは私がこれまでに書いたSQLです。しかし、私は
エラー1093FROM句で更新するターゲットテーブル'voterfile_household'を指定できません。修正方法がわかりません。
mysql - SELECTを使用して更新し、GROUPBYを使用せずにグループ化する
私はこのようなテーブルを持っています(MySQL 5.0.x、MyISAM):
少なくとも20が同じタイトルを持っている場合、すべての応答のステータスをnew( status=1
)からmulti( )に更新したいと思います。status=3
私はこれを持っていますが、動作しません:
ご注意ください:
- 有名なものを避けるためにネストされた選択を行います
You can't specify target table 'response' for update in FROM clause
GROUP BY
性能上の理由で使用できません。を使用したソリューションでのクエリコストLIMIT
ははるかに優れています(ただし、読みにくくなります)。
編集:
- MySQLでSELECTFROMUPDATEターゲットを実行することができます。ここで解決策を参照してください
- 問題は、選択されたデータにありますが、これは完全に間違っています。
私が見つけた唯一の解決策は、
/li>GROUP BY
:を使用することです。
派生応答として)
ご協力いただきありがとうございます!:)
mysql - 相関サブクエリの更新
開始時刻と終了時刻を記録するのではなく、開始時刻と期間 (分単位) だけを表に記録することにしました。既存のデータに基づいて新しい列に値が挿入されるようにテーブルを更新するにはどうすればよいですか? 以下の私の試みはエラーを引き起こします:
FROM 句での更新にターゲット テーブル 'lesson' を指定することはできません
mysql - mysql-値で外部キーを更新します
「year、month、day」列が他のテーブルへの外部キーであるbirthdate、year、month、day列があります。私がやりたいのは、各birthdateに対してget id(year(birthdate))をyear列の値にすることです。月と日の列についても同じです。
MySQLでこれを行うにはどうすればよいですか?
私はこの解決策を試しました:
ただし、「エラー1093(HY000):FROM句で更新するターゲットテーブル'member'を指定できません」が発生します。
前もって感謝します
mysql - MySQLでのEXISTSの使用
他のすべてのデータベースシステムで機能するこの単純なクエリがありますが、MySQLでは失敗します。
次のエラーメッセージが表示されます。
回避策はありますか?