date_sub_scalar.sql 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326
  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. FROM Dates;
  151. SELECT
  152. na - Date("2000-01-01"),
  153. naz - Date("2000-01-01"),
  154. nd - Date("2000-01-01"),
  155. ndz - Date("2000-01-01"),
  156. nt - Date("2000-01-01"),
  157. ntz - Date("2000-01-01"),
  158. wa - Date("2000-01-01"),
  159. wd - Date("2000-01-01"),
  160. wt - Date("2000-01-01"),
  161. waz - Date("2000-01-01"),
  162. wdz - Date("2000-01-01"),
  163. wtz - Date("2000-01-01"),
  164. na - TzDate("2000-01-01,Europe/Moscow"),
  165. naz - TzDate("2000-01-01,Europe/Moscow"),
  166. nd - TzDate("2000-01-01,Europe/Moscow"),
  167. ndz - TzDate("2000-01-01,Europe/Moscow"),
  168. nt - TzDate("2000-01-01,Europe/Moscow"),
  169. ntz - TzDate("2000-01-01,Europe/Moscow"),
  170. wa - TzDate("2000-01-01,Europe/Moscow"),
  171. wd - TzDate("2000-01-01,Europe/Moscow"),
  172. wt - TzDate("2000-01-01,Europe/Moscow"),
  173. waz - TzDate("2000-01-01,Europe/Moscow"),
  174. wdz - TzDate("2000-01-01,Europe/Moscow"),
  175. wtz - TzDate("2000-01-01,Europe/Moscow"),
  176. na - Datetime("2000-01-01T03:04:05Z"),
  177. naz - Datetime("2000-01-01T03:04:05Z"),
  178. nd - Datetime("2000-01-01T03:04:05Z"),
  179. ndz - Datetime("2000-01-01T03:04:05Z"),
  180. nt - Datetime("2000-01-01T03:04:05Z"),
  181. ntz - Datetime("2000-01-01T03:04:05Z"),
  182. wa - Datetime("2000-01-01T03:04:05Z"),
  183. wd - Datetime("2000-01-01T03:04:05Z"),
  184. wt - Datetime("2000-01-01T03:04:05Z"),
  185. waz - Datetime("2000-01-01T03:04:05Z"),
  186. wdz - Datetime("2000-01-01T03:04:05Z"),
  187. wtz - Datetime("2000-01-01T03:04:05Z"),
  188. na - TzDatetime("2000-01-01T03:04:05,Europe/Moscow"),
  189. naz - TzDatetime("2000-01-01T03:04:05,Europe/Moscow"),
  190. nd - TzDatetime("2000-01-01T03:04:05,Europe/Moscow"),
  191. ndz - TzDatetime("2000-01-01T03:04:05,Europe/Moscow"),
  192. nt - TzDatetime("2000-01-01T03:04:05,Europe/Moscow"),
  193. ntz - TzDatetime("2000-01-01T03:04:05,Europe/Moscow"),
  194. wa - TzDatetime("2000-01-01T03:04:05,Europe/Moscow"),
  195. wd - TzDatetime("2000-01-01T03:04:05,Europe/Moscow"),
  196. wt - TzDatetime("2000-01-01T03:04:05,Europe/Moscow"),
  197. waz - TzDatetime("2000-01-01T03:04:05,Europe/Moscow"),
  198. wdz - TzDatetime("2000-01-01T03:04:05,Europe/Moscow"),
  199. wtz - TzDatetime("2000-01-01T03:04:05,Europe/Moscow"),
  200. na - Timestamp("2000-01-01T03:04:05.678912Z"),
  201. naz - Timestamp("2000-01-01T03:04:05.678912Z"),
  202. nd - Timestamp("2000-01-01T03:04:05.678912Z"),
  203. ndz - Timestamp("2000-01-01T03:04:05.678912Z"),
  204. nt - Timestamp("2000-01-01T03:04:05.678912Z"),
  205. ntz - Timestamp("2000-01-01T03:04:05.678912Z"),
  206. wa - Timestamp("2000-01-01T03:04:05.678912Z"),
  207. wd - Timestamp("2000-01-01T03:04:05.678912Z"),
  208. wt - Timestamp("2000-01-01T03:04:05.678912Z"),
  209. waz - Timestamp("2000-01-01T03:04:05.678912Z"),
  210. wdz - Timestamp("2000-01-01T03:04:05.678912Z"),
  211. wtz - Timestamp("2000-01-01T03:04:05.678912Z"),
  212. na - TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"),
  213. naz - TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"),
  214. nd - TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"),
  215. ndz - TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"),
  216. nt - TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"),
  217. ntz - TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"),
  218. wa - TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"),
  219. wd - TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"),
  220. wt - TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"),
  221. waz - TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"),
  222. wdz - TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"),
  223. wtz - TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"),
  224. FROM Dates;
  225. SELECT
  226. na - Date32("1900-01-01"),
  227. naz - Date32("1900-01-01"),
  228. nd - Date32("1900-01-01"),
  229. ndz - Date32("1900-01-01"),
  230. nt - Date32("1900-01-01"),
  231. ntz - Date32("1900-01-01"),
  232. wa - Date32("1900-01-01"),
  233. wd - Date32("1900-01-01"),
  234. wt - Date32("1900-01-01"),
  235. waz - Date32("1900-01-01"),
  236. wdz - Date32("1900-01-01"),
  237. wtz - Date32("1900-01-01"),
  238. na - Datetime64("1900-01-01T03:04:05Z"),
  239. naz - Datetime64("1900-01-01T03:04:05Z"),
  240. nd - Datetime64("1900-01-01T03:04:05Z"),
  241. ndz - Datetime64("1900-01-01T03:04:05Z"),
  242. nt - Datetime64("1900-01-01T03:04:05Z"),
  243. ntz - Datetime64("1900-01-01T03:04:05Z"),
  244. wa - Datetime64("1900-01-01T03:04:05Z"),
  245. wd - Datetime64("1900-01-01T03:04:05Z"),
  246. wt - Datetime64("1900-01-01T03:04:05Z"),
  247. waz - Datetime64("1900-01-01T03:04:05Z"),
  248. wdz - Datetime64("1900-01-01T03:04:05Z"),
  249. wtz - Datetime64("1900-01-01T03:04:05Z"),
  250. na - Timestamp64("1900-01-01T03:04:05.678912Z"),
  251. naz - Timestamp64("1900-01-01T03:04:05.678912Z"),
  252. nd - Timestamp64("1900-01-01T03:04:05.678912Z"),
  253. ndz - Timestamp64("1900-01-01T03:04:05.678912Z"),
  254. nt - Timestamp64("1900-01-01T03:04:05.678912Z"),
  255. ntz - Timestamp64("1900-01-01T03:04:05.678912Z"),
  256. wa - Timestamp64("1900-01-01T03:04:05.678912Z"),
  257. wd - Timestamp64("1900-01-01T03:04:05.678912Z"),
  258. wt - Timestamp64("1900-01-01T03:04:05.678912Z"),
  259. waz - Timestamp64("1900-01-01T03:04:05.678912Z"),
  260. wdz - Timestamp64("1900-01-01T03:04:05.678912Z"),
  261. wtz - Timestamp64("1900-01-01T03:04:05.678912Z"),
  262. na - TzDate32("1900-01-01,Europe/Moscow"),
  263. naz - TzDate32("1900-01-01,Europe/Moscow"),
  264. nd - TzDate32("1900-01-01,Europe/Moscow"),
  265. ndz - TzDate32("1900-01-01,Europe/Moscow"),
  266. nt - TzDate32("1900-01-01,Europe/Moscow"),
  267. ntz - TzDate32("1900-01-01,Europe/Moscow"),
  268. wa - TzDate32("1900-01-01,Europe/Moscow"),
  269. wd - TzDate32("1900-01-01,Europe/Moscow"),
  270. wt - TzDate32("1900-01-01,Europe/Moscow"),
  271. waz - TzDate32("1900-01-01,Europe/Moscow"),
  272. wdz - TzDate32("1900-01-01,Europe/Moscow"),
  273. wtz - TzDate32("1900-01-01,Europe/Moscow"),
  274. na - TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"),
  275. naz - TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"),
  276. nd - TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"),
  277. ndz - TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"),
  278. nt - TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"),
  279. ntz - TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"),
  280. wa - TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"),
  281. wd - TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"),
  282. wt - TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"),
  283. waz - TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"),
  284. wdz - TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"),
  285. wtz - TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"),
  286. na - TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"),
  287. naz - TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"),
  288. nd - TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"),
  289. ndz - TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"),
  290. nt - TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"),
  291. ntz - TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"),
  292. wa - TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"),
  293. wd - TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"),
  294. wt - TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"),
  295. waz - TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"),
  296. wdz - TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"),
  297. wtz - TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow")
  298. FROM Dates;