如何从另一个表的外键插入数据?

时间:2017-05-24 17:04:05

标签: php yii2

我有一个包含很多行的txt文件。我将每行的数据插入到db中。

var chk="<td><input type='checkbox' class="+item.location_name+" id="+item.items_id+" value="+item.items_name+" onchange='check(this.id, this.value, this.className)'/></td>";

我需要像

这样的东西
foreach (... => ...) {
 ...
 $types = new QueryTypes();
 $types->query_type = $prepared_data_from_file;
 $types->save();
 $logs = new Logs();
 $logs->query_type = ...
 ...
}

-----------------------------------------------------
|                     LOGS                          |
-----------------------------------------------------
|  log_id (PK) | query_type (FK from query_type_id) |
-----------------------------------------------------


---------------------------------
|             QUERYTYPES        |
---------------------------------
|query_type_id (PK)| query_type |
---------------------------------

如何将QUERYTYPES中的query_type_id列插入到yii2的LOGS中的query_type列中?

2 个答案:

答案 0 :(得分:1)

您使用SELECT查询而不是VALUES

INSERT INTO LOGS (query_type)
SELECT query_type_id
FROM QUERYTYPES

答案 1 :(得分:0)

你是说这样的意思吗? :

INSERT INTO LOGS VALUES(NULL, (SELECT query_type_id FROM QUERYTYPES WHERE query_type = 'your_query_type_here'))