date_equals_scalar.sql 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332
  1. USE plato;
  2. pragma yt.DisableOptimizers="OutHorizontalJoin,HorizontalJoin,MultiHorizontalJoin,FuseMultiOutsWithOuterMaps";
  3. SELECT
  4. Date("2000-01-01") == na,
  5. Date("2000-01-01") == naz,
  6. Date("2000-01-01") == nd,
  7. Date("2000-01-01") == ndz,
  8. Date("2000-01-01") == nt,
  9. Date("2000-01-01") == ntz,
  10. Date("2000-01-01") == wa,
  11. Date("2000-01-01") == wd,
  12. Date("2000-01-01") == wt,
  13. Date("2000-01-01") == waz,
  14. Date("2000-01-01") == wdz,
  15. Date("2000-01-01") == wtz,
  16. TzDate("2000-01-01,Europe/Moscow") == na,
  17. TzDate("2000-01-01,Europe/Moscow") == naz,
  18. TzDate("2000-01-01,Europe/Moscow") == nd,
  19. TzDate("2000-01-01,Europe/Moscow") == ndz,
  20. TzDate("2000-01-01,Europe/Moscow") == nt,
  21. TzDate("2000-01-01,Europe/Moscow") == ntz,
  22. TzDate("2000-01-01,Europe/Moscow") == wa,
  23. TzDate("2000-01-01,Europe/Moscow") == wd,
  24. TzDate("2000-01-01,Europe/Moscow") == wt,
  25. TzDate("2000-01-01,Europe/Moscow") == waz,
  26. TzDate("2000-01-01,Europe/Moscow") == wdz,
  27. TzDate("2000-01-01,Europe/Moscow") == wtz,
  28. Datetime("2000-01-01T03:04:05Z") == na,
  29. Datetime("2000-01-01T03:04:05Z") == naz,
  30. Datetime("2000-01-01T03:04:05Z") == nd,
  31. Datetime("2000-01-01T03:04:05Z") == ndz,
  32. Datetime("2000-01-01T03:04:05Z") == nt,
  33. Datetime("2000-01-01T03:04:05Z") == ntz,
  34. Datetime("2000-01-01T03:04:05Z") == wa,
  35. Datetime("2000-01-01T03:04:05Z") == wd,
  36. Datetime("2000-01-01T03:04:05Z") == wt,
  37. Datetime("2000-01-01T03:04:05Z") == waz,
  38. Datetime("2000-01-01T03:04:05Z") == wdz,
  39. Datetime("2000-01-01T03:04:05Z") == wtz,
  40. TzDatetime("2000-01-01T03:04:05,Europe/Moscow") == na,
  41. TzDatetime("2000-01-01T03:04:05,Europe/Moscow") == naz,
  42. TzDatetime("2000-01-01T03:04:05,Europe/Moscow") == nd,
  43. TzDatetime("2000-01-01T03:04:05,Europe/Moscow") == ndz,
  44. TzDatetime("2000-01-01T03:04:05,Europe/Moscow") == nt,
  45. TzDatetime("2000-01-01T03:04:05,Europe/Moscow") == ntz,
  46. TzDatetime("2000-01-01T03:04:05,Europe/Moscow") == wa,
  47. TzDatetime("2000-01-01T03:04:05,Europe/Moscow") == wd,
  48. TzDatetime("2000-01-01T03:04:05,Europe/Moscow") == wt,
  49. TzDatetime("2000-01-01T03:04:05,Europe/Moscow") == waz,
  50. TzDatetime("2000-01-01T03:04:05,Europe/Moscow") == wdz,
  51. TzDatetime("2000-01-01T03:04:05,Europe/Moscow") == wtz,
  52. Timestamp("2000-01-01T03:04:05.678912Z") == na,
  53. Timestamp("2000-01-01T03:04:05.678912Z") == naz,
  54. Timestamp("2000-01-01T03:04:05.678912Z") == nd,
  55. Timestamp("2000-01-01T03:04:05.678912Z") == ndz,
  56. Timestamp("2000-01-01T03:04:05.678912Z") == nt,
  57. Timestamp("2000-01-01T03:04:05.678912Z") == ntz,
  58. Timestamp("2000-01-01T03:04:05.678912Z") == wa,
  59. Timestamp("2000-01-01T03:04:05.678912Z") == wd,
  60. Timestamp("2000-01-01T03:04:05.678912Z") == wt,
  61. Timestamp("2000-01-01T03:04:05.678912Z") == waz,
  62. Timestamp("2000-01-01T03:04:05.678912Z") == wdz,
  63. Timestamp("2000-01-01T03:04:05.678912Z") == wtz,
  64. TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow") == na,
  65. TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow") == naz,
  66. TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow") == nd,
  67. TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow") == ndz,
  68. TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow") == nt,
  69. TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow") == ntz,
  70. TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow") == wa,
  71. TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow") == wd,
  72. TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow") == wt,
  73. TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow") == waz,
  74. TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow") == wdz,
  75. TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow") == wtz
  76. FROM Dates;
  77. SELECT
  78. Date32("1900-01-01") == na,
  79. Date32("1900-01-01") == naz,
  80. Date32("1900-01-01") == nd,
  81. Date32("1900-01-01") == ndz,
  82. Date32("1900-01-01") == nt,
  83. Date32("1900-01-01") == ntz,
  84. Date32("1900-01-01") == wa,
  85. Date32("1900-01-01") == wd,
  86. Date32("1900-01-01") == wt,
  87. Date32("1900-01-01") == waz,
  88. Date32("1900-01-01") == wdz,
  89. Date32("1900-01-01") == wtz,
  90. Datetime64("1900-01-01T03:04:05Z") == na,
  91. Datetime64("1900-01-01T03:04:05Z") == naz,
  92. Datetime64("1900-01-01T03:04:05Z") == nd,
  93. Datetime64("1900-01-01T03:04:05Z") == ndz,
  94. Datetime64("1900-01-01T03:04:05Z") == nt,
  95. Datetime64("1900-01-01T03:04:05Z") == ntz,
  96. Datetime64("1900-01-01T03:04:05Z") == wa,
  97. Datetime64("1900-01-01T03:04:05Z") == wd,
  98. Datetime64("1900-01-01T03:04:05Z") == wt,
  99. Datetime64("1900-01-01T03:04:05Z") == waz,
  100. Datetime64("1900-01-01T03:04:05Z") == wdz,
  101. Datetime64("1900-01-01T03:04:05Z") == wtz,
  102. Timestamp64("1900-01-01T03:04:05.678912Z") == na,
  103. Timestamp64("1900-01-01T03:04:05.678912Z") == naz,
  104. Timestamp64("1900-01-01T03:04:05.678912Z") == nd,
  105. Timestamp64("1900-01-01T03:04:05.678912Z") == ndz,
  106. Timestamp64("1900-01-01T03:04:05.678912Z") == nt,
  107. Timestamp64("1900-01-01T03:04:05.678912Z") == ntz,
  108. Timestamp64("1900-01-01T03:04:05.678912Z") == wa,
  109. Timestamp64("1900-01-01T03:04:05.678912Z") == wd,
  110. Timestamp64("1900-01-01T03:04:05.678912Z") == wt,
  111. Timestamp64("1900-01-01T03:04:05.678912Z") == waz,
  112. Timestamp64("1900-01-01T03:04:05.678912Z") == wdz,
  113. Timestamp64("1900-01-01T03:04:05.678912Z") == wtz,
  114. TzDate32("1900-01-01,Europe/Moscow") == na,
  115. TzDate32("1900-01-01,Europe/Moscow") == naz,
  116. TzDate32("1900-01-01,Europe/Moscow") == nd,
  117. TzDate32("1900-01-01,Europe/Moscow") == ndz,
  118. TzDate32("1900-01-01,Europe/Moscow") == nt,
  119. TzDate32("1900-01-01,Europe/Moscow") == ntz,
  120. TzDate32("1900-01-01,Europe/Moscow") == wa,
  121. TzDate32("1900-01-01,Europe/Moscow") == wd,
  122. TzDate32("1900-01-01,Europe/Moscow") == wt,
  123. TzDate32("1900-01-01,Europe/Moscow") == waz,
  124. TzDate32("1900-01-01,Europe/Moscow") == wdz,
  125. TzDate32("1900-01-01,Europe/Moscow") == wtz,
  126. TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") == na,
  127. TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") == naz,
  128. TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") == nd,
  129. TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") == ndz,
  130. TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") == nt,
  131. TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") == ntz,
  132. TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") == wa,
  133. TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") == wd,
  134. TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") == wt,
  135. TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") == waz,
  136. TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") == wdz,
  137. TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") == wtz,
  138. TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") == na,
  139. TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") == naz,
  140. TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") == nd,
  141. TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") == ndz,
  142. TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") == nt,
  143. TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") == ntz,
  144. TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") == wa,
  145. TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") == wd,
  146. TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") == wt,
  147. TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") == waz,
  148. TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") == wdz,
  149. TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") == wtz,
  150. Interval("P1D") == ni,
  151. Interval("P1D") == wi,
  152. Interval64("P1D") == ni,
  153. Interval64("P1D") == wi,
  154. FROM Dates;
  155. SELECT
  156. na == Date("2000-01-01"),
  157. naz == Date("2000-01-01"),
  158. nd == Date("2000-01-01"),
  159. ndz == Date("2000-01-01"),
  160. nt == Date("2000-01-01"),
  161. ntz == Date("2000-01-01"),
  162. wa == Date("2000-01-01"),
  163. wd == Date("2000-01-01"),
  164. wt == Date("2000-01-01"),
  165. waz == Date("2000-01-01"),
  166. wdz == Date("2000-01-01"),
  167. wtz == Date("2000-01-01"),
  168. na == TzDate("2000-01-01,Europe/Moscow"),
  169. naz == TzDate("2000-01-01,Europe/Moscow"),
  170. nd == TzDate("2000-01-01,Europe/Moscow"),
  171. ndz == TzDate("2000-01-01,Europe/Moscow"),
  172. nt == TzDate("2000-01-01,Europe/Moscow"),
  173. ntz == TzDate("2000-01-01,Europe/Moscow"),
  174. wa == TzDate("2000-01-01,Europe/Moscow"),
  175. wd == TzDate("2000-01-01,Europe/Moscow"),
  176. wt == TzDate("2000-01-01,Europe/Moscow"),
  177. waz == TzDate("2000-01-01,Europe/Moscow"),
  178. wdz == TzDate("2000-01-01,Europe/Moscow"),
  179. wtz == TzDate("2000-01-01,Europe/Moscow"),
  180. na == Datetime("2000-01-01T03:04:05Z"),
  181. naz == Datetime("2000-01-01T03:04:05Z"),
  182. nd == Datetime("2000-01-01T03:04:05Z"),
  183. ndz == Datetime("2000-01-01T03:04:05Z"),
  184. nt == Datetime("2000-01-01T03:04:05Z"),
  185. ntz == Datetime("2000-01-01T03:04:05Z"),
  186. wa == Datetime("2000-01-01T03:04:05Z"),
  187. wd == Datetime("2000-01-01T03:04:05Z"),
  188. wt == Datetime("2000-01-01T03:04:05Z"),
  189. waz == Datetime("2000-01-01T03:04:05Z"),
  190. wdz == Datetime("2000-01-01T03:04:05Z"),
  191. wtz == Datetime("2000-01-01T03:04:05Z"),
  192. na == TzDatetime("2000-01-01T03:04:05,Europe/Moscow"),
  193. naz == TzDatetime("2000-01-01T03:04:05,Europe/Moscow"),
  194. nd == TzDatetime("2000-01-01T03:04:05,Europe/Moscow"),
  195. ndz == TzDatetime("2000-01-01T03:04:05,Europe/Moscow"),
  196. nt == TzDatetime("2000-01-01T03:04:05,Europe/Moscow"),
  197. ntz == TzDatetime("2000-01-01T03:04:05,Europe/Moscow"),
  198. wa == TzDatetime("2000-01-01T03:04:05,Europe/Moscow"),
  199. wd == TzDatetime("2000-01-01T03:04:05,Europe/Moscow"),
  200. wt == TzDatetime("2000-01-01T03:04:05,Europe/Moscow"),
  201. waz == TzDatetime("2000-01-01T03:04:05,Europe/Moscow"),
  202. wdz == TzDatetime("2000-01-01T03:04:05,Europe/Moscow"),
  203. wtz == TzDatetime("2000-01-01T03:04:05,Europe/Moscow"),
  204. na == Timestamp("2000-01-01T03:04:05.678912Z"),
  205. naz == Timestamp("2000-01-01T03:04:05.678912Z"),
  206. nd == Timestamp("2000-01-01T03:04:05.678912Z"),
  207. ndz == Timestamp("2000-01-01T03:04:05.678912Z"),
  208. nt == Timestamp("2000-01-01T03:04:05.678912Z"),
  209. ntz == Timestamp("2000-01-01T03:04:05.678912Z"),
  210. wa == Timestamp("2000-01-01T03:04:05.678912Z"),
  211. wd == Timestamp("2000-01-01T03:04:05.678912Z"),
  212. wt == Timestamp("2000-01-01T03:04:05.678912Z"),
  213. waz == Timestamp("2000-01-01T03:04:05.678912Z"),
  214. wdz == Timestamp("2000-01-01T03:04:05.678912Z"),
  215. wtz == Timestamp("2000-01-01T03:04:05.678912Z"),
  216. na == TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"),
  217. naz == TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"),
  218. nd == TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"),
  219. ndz == TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"),
  220. nt == TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"),
  221. ntz == TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"),
  222. wa == TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"),
  223. wd == TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"),
  224. wt == TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"),
  225. waz == TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"),
  226. wdz == TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"),
  227. wtz == TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow")
  228. FROM Dates;
  229. SELECT
  230. na == Date32("1900-01-01"),
  231. naz == Date32("1900-01-01"),
  232. nd == Date32("1900-01-01"),
  233. ndz == Date32("1900-01-01"),
  234. nt == Date32("1900-01-01"),
  235. ntz == Date32("1900-01-01"),
  236. wa == Date32("1900-01-01"),
  237. wd == Date32("1900-01-01"),
  238. wt == Date32("1900-01-01"),
  239. waz == Date32("1900-01-01"),
  240. wdz == Date32("1900-01-01"),
  241. wtz == Date32("1900-01-01"),
  242. na == Datetime64("1900-01-01T03:04:05Z"),
  243. naz == Datetime64("1900-01-01T03:04:05Z"),
  244. nd == Datetime64("1900-01-01T03:04:05Z"),
  245. ndz == Datetime64("1900-01-01T03:04:05Z"),
  246. nt == Datetime64("1900-01-01T03:04:05Z"),
  247. ntz == Datetime64("1900-01-01T03:04:05Z"),
  248. wa == Datetime64("1900-01-01T03:04:05Z"),
  249. wd == Datetime64("1900-01-01T03:04:05Z"),
  250. wt == Datetime64("1900-01-01T03:04:05Z"),
  251. waz == Datetime64("1900-01-01T03:04:05Z"),
  252. wdz == Datetime64("1900-01-01T03:04:05Z"),
  253. wtz == Datetime64("1900-01-01T03:04:05Z"),
  254. na == Timestamp64("1900-01-01T03:04:05.678912Z"),
  255. naz == Timestamp64("1900-01-01T03:04:05.678912Z"),
  256. nd == Timestamp64("1900-01-01T03:04:05.678912Z"),
  257. ndz == Timestamp64("1900-01-01T03:04:05.678912Z"),
  258. nt == Timestamp64("1900-01-01T03:04:05.678912Z"),
  259. ntz == Timestamp64("1900-01-01T03:04:05.678912Z"),
  260. wa == Timestamp64("1900-01-01T03:04:05.678912Z"),
  261. wd == Timestamp64("1900-01-01T03:04:05.678912Z"),
  262. wt == Timestamp64("1900-01-01T03:04:05.678912Z"),
  263. waz == Timestamp64("1900-01-01T03:04:05.678912Z"),
  264. wdz == Timestamp64("1900-01-01T03:04:05.678912Z"),
  265. wtz == Timestamp64("1900-01-01T03:04:05.678912Z"),
  266. na == TzDate32("1900-01-01,Europe/Moscow"),
  267. naz == TzDate32("1900-01-01,Europe/Moscow"),
  268. nd == TzDate32("1900-01-01,Europe/Moscow"),
  269. ndz == TzDate32("1900-01-01,Europe/Moscow"),
  270. nt == TzDate32("1900-01-01,Europe/Moscow"),
  271. ntz == TzDate32("1900-01-01,Europe/Moscow"),
  272. wa == TzDate32("1900-01-01,Europe/Moscow"),
  273. wd == TzDate32("1900-01-01,Europe/Moscow"),
  274. wt == TzDate32("1900-01-01,Europe/Moscow"),
  275. waz == TzDate32("1900-01-01,Europe/Moscow"),
  276. wdz == TzDate32("1900-01-01,Europe/Moscow"),
  277. wtz == TzDate32("1900-01-01,Europe/Moscow"),
  278. na == TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"),
  279. naz == TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"),
  280. nd == TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"),
  281. ndz == TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"),
  282. nt == TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"),
  283. ntz == TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"),
  284. wa == TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"),
  285. wd == TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"),
  286. wt == TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"),
  287. waz == TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"),
  288. wdz == TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"),
  289. wtz == TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"),
  290. na == TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"),
  291. naz == TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"),
  292. nd == TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"),
  293. ndz == TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"),
  294. nt == TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"),
  295. ntz == TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"),
  296. wa == TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"),
  297. wd == TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"),
  298. wt == TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"),
  299. waz == TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"),
  300. wdz == TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"),
  301. wtz == TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"),
  302. ni == Interval("P1D"),
  303. wi == Interval("P1D"),
  304. ni == Interval64("P1D"),
  305. wi == Interval64("P1D"),
  306. FROM Dates;