我需要做2个单独的查询,并需要结果。 一个是我需要2个不同表中2列的值之间的差的地方。
table 1
user id | userroomid | roomid | createdOn
2 22 54 2018-07-13 03:58:33
3 23 55 2018-07-13 04:58:33
4 26 59 2018-08-13 04:58:33
table 2
user id | roomname | roomid | createdTime
2 asd 54 2018-07-13 03:58:33
3 deg 55 2018-07-13 04:58:33
4 bfds 59 2018-08-13 04:58:33
所以,我想要两个表中的createdTime列和createdOn列之间的时差。
并且我已经编写了另一个查询,即将项目插入表中,但是我不确定如何将这两个查询联接起来并使其成为一个查询。
这是第二个查询
let sqlInsert = mysql.format(`INSERT INTO userroom (roomid,userid) VALUES (?, ? )`,[roomid,userid]);
那么,我该如何完成呢?
答案 0 :(得分:0)
在这两个表之间进行联接,然后使用TIMEDIFF
函数(表示为时间值)和TIME_TO_SEC,它将以秒为单位转换时间
TIMEDIFF`函数的示例
SELECT TIME_TO_SEC( TIMEDIFF('2009-05-18 15:45:57.005678','2009-05-18 13:40:50.005670'));
它将返回7507秒
根据您的情况
select TIME_TO_SEC( TIMEDIFF(t1.createdOn,t2.createdOn)) as time_diff from table1 t1
inner join table2 t2 on t1.user id=t2.user id