1

我有 3 个相互关联的表

table1 (for insert)
*******************
id1 |   lable    |     line1

table2
********************
id2 |   id1  |  id3

table3
*******************
id3 | line1

如何在 SQL(MySQL) 脚本中编写而不是 php 脚本?

INSERT INTO table1 (id1,lable,line1) VALUES ($from_GET, $from_GET,How can I got from table3?);

谢谢

4

2 回答 2

2
INSERT INTO table1 (id1,lable,line1)
SELECT $from_GET, $from_GET, line1 FROM table3 WHERE id3 = $from_GET;

检查文档中的语法

于 2012-06-25T14:59:03.253 回答
1

如果你正在做插入,那么你可以这样做:

INSERT INTO table1 (id, label, line1)
SELECT ... FROM ... WHERE ...

您还可以更新引用相关表:

UPDATE table1
JOIN table2 ON ...
SET table1.field = table2.another_field

请注意,如果您使用 $_GET 变量,那么清理该输入以防止 sql 注入攻击是非常重要的。

于 2012-06-25T15:00:00.930 回答