これはなぜ機能しないのか分かりませんが、(テーブルからの)カラムとデータ(テーブルからではありません)そこ。Mysqlは、あるテーブルの列とデータをEXISTSに基づいて挿入します
INSERT INTO event_tags (event_id, tag_id)
VALUES (SELECT events.id, 2 FROM events WHERE events.info = 'HybridAnalysis')
WHERE NOT EXISTS (SELECT events.id=event_tags.event_id AND event_tags.tag_id=2);
テーブル
Events
id Info
1 ThreatExpert
2 HybridAnalysis
3 ThreatExpert
4 HybridAnalysis
Event_tags
event_ID tag_id
3 1
4 2
(eventsIDが主ではありません)
Event_tags(表)は、このように見える終わるはずです -
Event_tags
event_id tag_id
3 1
4 2
1 1
2 2
これは私の誤りである - ERROR 1064 (42000):SQL構文にエラーがあります。 *
の下に編集された「WHERE NOT) 『行2でHybridAnalysis』 events.info =イベントからevents.idを選択して、3」の近くに使用する権利構文についてはMySQLサーバのバージョンに対応するマニュアルを確認してください #####私はそれが簡単に
tags
id name
3 HybridAndlysis
4 ThreatExpert
構文は次のとおりです。1)insert tbl(col1、col2)values(a、b)...または2)insert x、y from ... – Drew
はthreatExpertとHybridAnalysisのみですあなたが今までに入力する2つの値は?パターンはありますか?これらのタグIDは常に1,2ですか?それ以外の場合は、新しい情報とtag_idsのためにこのクエリを更新する必要があります – EoinS
@ EoinSこれらは現在私が持っている唯一の2つです。ThreatExpertで同じことをしてから、毎晩cronジョブを実行する必要があります。しかし、ええ、もっと後になる可能性があります。 – Dpitt1968