似ていない2つのテーブルがあります。table2
同様の値を持つレコードが に見つかった場合にのみ、レコードを に挿入できる方法はありtable1
ますか? 私はこれをすべてやっていphp pdo
ますmysql
例: 次table1
のような値があるとし
ましょう:
id
--
1
2
3
4
6
それで:
insert into table2 (id) values (3) // Will work, because id 3 exists in table1
insert into table2 (id) values (7) // Will not work, because id 7 does not exists in table1
現在、私がこれを行う方法は、 a を実行することでselect count(id) where id = 3
あり、 aid
が存在する場合は挿入されます。面倒!
最初に a を実行してから を実行しなくても、これを行う方法はありselect
ますinsert
か?
foreign key
これはまだ始まったばかりなので、aなどのようなものを追加する必要がある場合は、喜んで変更します。
ここで実行される唯一のクエリはinsert into table2 (id) values (3)
. が にある場合にのみ動作する必要がid = 3
ありtable1
ます。値3
はユーザーが指定します。