2016-07-07 60 views
0

我有两个表,它们都有日期时间戳。每张桌子每60秒钟有一个新条目(大约)我想匹配除秒之外的时间,但无法弄清楚如何去掉秒钟。通过日期时间戳连接表(剥离秒)

SELECT t1.ts, t2.ts FROM t1 JOIN t2 ON FORMAT([t1.ts], 'YYYY-MM-dd HH:mm') = FORMAT([t2.ts], 'YYYY-MM-dd HH:mm')

+1

请用你正在使用的数据库标记你的问题。而且,为什么你的查询不工作? –

+0

如果你在SQL 2012+你写的应该工作 – Matt

+0

供参考:你选择的版本仍然有秒。也许这会误导你? –

回答

1

使用整数除法以匹配分钟:自年零

SELECT t1.ts, t2.ts 
FROM t1 
JOIN t2 ON TO_SECONDS(t1.ts) DIV 60 = TO_SECONDS(t2.ts) DIV 60 

TO_SECONDS()返回的秒数和DIV丢弃分割的小数部分,所以表达式TO_SECONDS(...) DIV 60是有效的从零年起的整分钟数。

+0

这有效!万分感谢。 –