我有桌子:
CREATE TABLE `ticket` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`price` int(11) DEFAULT NULL,
`status` NOT NULL DEFAULT,
`date_created` datetime NOT NULL,
`date_used` datetime DEFAULT NULL,
`used_by_user_id` int(11) DEFAULT NULL,)
ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
我已经创建了表
$this->createTable('used', [
'id' => $this->primaryKey(),
'ticket_id' => $this->integer()->notNull(),
'date_used' => $this->integer()->notNull(),
'used_by_user_id' => $this->integer()->notNull(),
], 'CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE=InnoDB');
我想将某些数据(date_used
和used_by_user_id
)从表ticket
移动到查询中与迁移yii2一起使用的其他表。但是如果没有ActiveRecord
和array
,我不知道该怎么做。
答案 0 :(得分:0)
$this->execute("
INSERT INTO used (ticket_id, date_used, used_by_user_id)
SELECT id, date_used, used_by_user_id
FROM ticket
WHERE
used_by_user_id IS NOT NULL AND date_used IS NOT NULL
");
仅sql。 select
insert into
的Yii迁移