sqlserver 表达式函数测试

This commit is contained in:
28810
2018-12-21 19:15:07 +08:00
parent 2a07c8bae6
commit 759d507cef
13 changed files with 1936 additions and 198 deletions

View File

@ -37,7 +37,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => a.CreateTime.TimeOfDay > TimeSpan.Zero).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE ((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000) > 0)
//WHERE (timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000) > 0)
}
[Fact]
public void MinValue() {
@ -45,7 +45,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => a.CreateTime.TimeOfDay > TimeSpan.MinValue).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE ((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000) > -922337203685477580)
//WHERE (timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000) > -922337203685477580)
}
[Fact]
public void MaxValue() {
@ -53,7 +53,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => a.CreateTime.TimeOfDay < TimeSpan.MaxValue).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE ((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000) < 922337203685477580)
//WHERE (timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000) < 922337203685477580)
}
[Fact]
public void Days() {
@ -61,7 +61,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => a.CreateTime.TimeOfDay.Days == 0).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE ((((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000)) div 86400000000) = 0)
//WHERE (((timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000)) div 86400000000) = 0)
}
[Fact]
public void Hours() {
@ -69,7 +69,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => a.CreateTime.TimeOfDay.Hours > 0).ToSql());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE ((((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000)) div 3600000000) mod 24 > 0)
//WHERE (((timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000)) div 3600000000) mod 24 > 0)
}
[Fact]
public void Milliseconds() {
@ -77,7 +77,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => a.CreateTime.TimeOfDay.Milliseconds > 0).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE ((((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000)) div 1000 mod 1000) > 0)
//WHERE (((timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000)) div 1000 mod 1000) > 0)
}
[Fact]
public void Minutes() {
@ -85,7 +85,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => a.CreateTime.TimeOfDay.Minutes > 0).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE ((((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000)) div 60000000 mod 60) > 0)
//WHERE (((timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000)) div 60000000 mod 60) > 0)
}
[Fact]
public void Seconds() {
@ -93,7 +93,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => a.CreateTime.TimeOfDay.Seconds > 0).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE ((((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000)) div 1000000 mod 60) > 0)
//WHERE (((timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000)) div 1000000 mod 60) > 0)
}
[Fact]
public void Ticks() {
@ -101,7 +101,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => a.CreateTime.TimeOfDay.Ticks > 0).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE ((((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000)) * 10) > 0)
//WHERE (((timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000)) * 10) > 0)
}
[Fact]
public void TotalDays() {
@ -109,7 +109,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => a.CreateTime.TimeOfDay.TotalDays > 0).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE ((((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000)) / 86400000000) > 0)
//WHERE (((timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000)) / 86400000000) > 0)
}
[Fact]
public void TotalHours() {
@ -117,7 +117,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => a.CreateTime.TimeOfDay.TotalHours > 0).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE ((((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000)) / 3600000000) > 0)
//WHERE (((timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000)) / 3600000000) > 0)
}
[Fact]
public void TotalMilliseconds() {
@ -125,7 +125,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => a.CreateTime.TimeOfDay.TotalMilliseconds > 0).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE ((((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000)) / 1000) > 0)
//WHERE (((timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000)) / 1000) > 0)
}
[Fact]
public void TotalMinutes() {
@ -133,7 +133,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => a.CreateTime.TimeOfDay.TotalMinutes > 0).ToSql());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE ((((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000)) / 60000000) > 0)
//WHERE (((timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000)) / 60000000) > 0)
}
[Fact]
public void TotalSeconds() {
@ -141,7 +141,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => a.CreateTime.TimeOfDay.TotalSeconds > 0).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE ((((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000)) / 1000000) > 0)
//WHERE (((timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000)) / 1000000) > 0)
}
[Fact]
public void Add() {
@ -149,7 +149,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => a.CreateTime.TimeOfDay.Add(TimeSpan.FromDays(1)) > TimeSpan.Zero).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE (((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000) + (1 * 86400000000)) > 0)
//WHERE ((timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000) + (1 * 86400000000)) > 0)
}
[Fact]
public void Subtract() {
@ -157,7 +157,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => a.CreateTime.TimeOfDay.Subtract(TimeSpan.FromDays(1)) > TimeSpan.Zero).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE (((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000) - (1 * 86400000000)) > 0)
//WHERE ((timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000) - (1 * 86400000000)) > 0)
}
[Fact]
public void CompareTo() {
@ -165,7 +165,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => a.CreateTime.TimeOfDay.CompareTo(TimeSpan.FromDays(1)) > 0).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE ((((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000)) - ((1 * 86400000000))) > 0)
//WHERE (((timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000)) - ((1 * 86400000000))) > 0)
}
[Fact]
public void this_Equals() {
@ -173,7 +173,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => a.CreateTime.TimeOfDay.Equals(TimeSpan.FromDays(1))).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE (((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000) = (1 * 86400000000)))
//WHERE ((timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000) = (1 * 86400000000)))
}
[Fact]
public void this_ToString() {
@ -181,7 +181,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => a.CreateTime.TimeOfDay.ToString() == "ssss").ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE (date_format(date_add(cast('0001/1/1 0:00:00' as datetime), interval ((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000)) microsecond), '%Y-%m-%d %H:%i:%s.%f') = 'ssss')
//WHERE (date_format(date_add(cast('0001/1/1 0:00:00' as datetime), interval (timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000)) microsecond), '%Y-%m-%d %H:%i:%s.%f') = 'ssss')
}
[Fact]
@ -190,7 +190,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => TimeSpan.Compare(a.CreateTime.TimeOfDay, TimeSpan.FromDays(1)) > 0).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE ((((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000)) - ((1 * 86400000000))) > 0)
//WHERE (((timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000)) - ((1 * 86400000000))) > 0)
}
[Fact]
public void TimeSpan_Equals() {
@ -198,7 +198,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => TimeSpan.Equals(a.CreateTime.TimeOfDay, TimeSpan.FromDays(1))).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE (((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000) = (1 * 86400000000)))
//WHERE ((timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000) = (1 * 86400000000)))
}
[Fact]
public void TimeSpan_FromDays() {
@ -206,7 +206,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => TimeSpan.Equals(a.CreateTime.TimeOfDay, TimeSpan.FromDays(1))).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE (((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000) = (1 * 86400000000)))
//WHERE ((timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000) = (1 * 86400000000)))
}
[Fact]
public void TimeSpan_FromHours() {
@ -214,7 +214,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => TimeSpan.Equals(a.CreateTime.TimeOfDay, TimeSpan.FromHours(1))).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE (((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000) = (1 * 3600000000)))
//WHERE ((timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000) = (1 * 3600000000)))
}
[Fact]
public void TimeSpan_FromMilliseconds() {
@ -222,7 +222,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => TimeSpan.Equals(a.CreateTime.TimeOfDay, TimeSpan.FromMilliseconds(1))).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE (((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000) = (1 * 1000)))
//WHERE ((timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000) = (1 * 1000)))
}
[Fact]
public void TimeSpan_FromMinutes() {
@ -230,7 +230,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => TimeSpan.Equals(a.CreateTime.TimeOfDay, TimeSpan.FromMinutes(1))).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE (((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000) = (1 * 60000000)))
//WHERE ((timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000) = (1 * 60000000)))
}
[Fact]
public void TimeSpan_FromSeconds() {
@ -238,7 +238,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => TimeSpan.Equals(a.CreateTime.TimeOfDay, TimeSpan.FromSeconds(1))).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE (((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000) = (1 * 1000000)))
//WHERE ((timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000) = (1 * 1000000)))
}
[Fact]
public void TimeSpan_FromTicks() {
@ -246,7 +246,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => TimeSpan.Equals(a.CreateTime.TimeOfDay, TimeSpan.FromTicks(1))).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE (((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000) = (1 / 10)))
//WHERE ((timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000) = (1 / 10)))
}
[Fact]
public void TimeSpan_Parse() {
@ -254,7 +254,7 @@ namespace FreeSql.Tests.MySqlExpression {
data.Add(select.Where(a => TimeSpan.Parse(a.CreateTime.TimeOfDay.ToString()) > TimeSpan.Zero).ToList());
//SELECT a.`Id` as1, a.`Clicks` as2, a.`TestTypeInfoGuid` as3, a.`Title` as4, a.`CreateTime` as5
//FROM `tb_topic` a
//WHERE (cast(date_format(date_add(cast('0001/1/1 0:00:00' as datetime), interval ((time_to_sec(date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f')) * 1000000 + microsecond(a.`CreateTime`) + 6213559680000000)) microsecond), '%Y-%m-%d %H:%i:%s.%f') as signed) > 0)
//WHERE (cast(date_format(date_add(cast('0001/1/1 0:00:00' as datetime), interval (timestampdiff(microsecond, date_format(a.`CreateTime`, '1970-1-1 %H:%i:%s.%f'), a.`CreateTime`) + 62135596800000000)) microsecond), '%Y-%m-%d %H:%i:%s.%f') as signed) > 0)
}
}
}