2015-07-10 46 views
4

我想用Slick 3.0编写一个查询,但似乎无法弄清楚。撰写“插入...选择...在哪里”查询

等效SQL是 “插入SavedMail SELECT * FROM收件箱,其中Inbox.id = 1”

val mailTable = TableQuery[Tables.Inbox] 
val savedMailTable = TableQuery[Tables.Savedmail] 
val select = mailTable.filter(_.id === msgId) 

我卡在现在怎么办插入。帮助赞赏。

回答

3

这是我提出的解决方案。也许有一种方法不使用forceInsertQuery,但是,嘿,这是有效的。

val mailTable = TableQuery[Tables.Inbox] 
val savedMailTable = TableQuery[Tables.Savedmail] 

val select = mailTable.filter(_.id === msgId).map(c => (c.id, c.touserid, c.fromuserid, c.mailtype, c.subject, c.msg, c.postdate)) 
val q = savedMailTable.map(c => (c.id, c.touserid, c.fromuserid, c.mailtype, c.subject, c.msg, c.postdate)) forceInsertQuery select