Advertisement
Guest User

Untitled

a guest
Dec 19th, 2014
154
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.98 KB | None | 0 0
  1. SELECT
  2. date_trunc('second', ticktime) AS ticktime ,
  3. max(last_price) OVER w AS high ,
  4. min(last_price) OVER w AS low
  5. FROM czces
  6. WHERE product_type ='TA' AND contract_month = '2014-08-01 00:00:00'::TIMESTAMP
  7. WINDOW w AS (
  8. PARTITION BY date_trunc('second', ticktime)
  9. ORDER BY ticktime ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING
  10. )
  11.  
  12. SELECT
  13. t.high,
  14. t.low
  15. FROM
  16. (
  17.  
  18. SELECT generate_series(
  19. date_trunc('second', min(ticktime)) ,
  20. date_trunc('second', max(ticktime)) ,
  21. interval '1 sec'
  22. ) FROM czces AS g (time)
  23.  
  24. LEFT JOIN
  25. (
  26. SELECT
  27. date_trunc('second', ticktime) AS time ,
  28. max(last_price) OVER w AS high ,
  29. min(last_price) OVER w AS low
  30. FROM czces
  31. WHERE product_type ='TA' AND contract_month = '2014-08-01 00:00:00'::TIMESTAMP
  32. WINDOW w AS (
  33. PARTITION BY date_trunc('second', ticktime)
  34. ORDER BY ticktime ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING
  35. )
  36. ) t USING (time)
  37.  
  38.  
  39.  
  40. ORDER BY 1
  41. ) AS t ;
  42.  
  43. SELECT
  44. t.high,
  45. t.low
  46. FROM
  47. (
  48.  
  49. SELECT generate_series(
  50. date_trunc('second', min(ticktime)) ,
  51. date_trunc('second', max(ticktime)) ,
  52. interval '1 sec'
  53. ) FROM czces AS g(ticktime)
  54.  
  55. LEFT JOIN
  56. (
  57. SELECT
  58. date_trunc('second', ticktime) AS ticktime ,
  59. max(last_price) OVER w AS high ,
  60. min(last_price) OVER w AS low
  61. FROM czces
  62. WHERE product_type ='TA' AND contract_month = '2014-08-01 00:00:00'::TIMESTAMP
  63. WINDOW w AS (
  64. PARTITION BY date_trunc('second', ticktime)
  65. ORDER BY ticktime ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING
  66. )
  67. ) t USING (ticktime)
  68.  
  69.  
  70.  
  71. ORDER BY 1
  72. ) ;
  73.  
  74. SELECT generate_series(
  75. date_trunc('second', min(ticktime)) ,
  76. date_trunc('second', max(ticktime)) ,
  77. interval '1 sec'
  78. ) FROM czces AS g (time)
  79.  
  80. SELECT generate_series(
  81. date_trunc('second', min(ticktime)) ,
  82. date_trunc('second', max(ticktime)) ,
  83. interval '1 sec'
  84. ) AS "time" FROM czces;
  85.  
  86. ERROR: subquery in FROM must have an alias
  87. LINE 6: (
  88. ^
  89. HINT: For example, FROM (SELECT ...) [AS] foo.
  90.  
  91. SELECT
  92. x.ticktime,
  93. t.high,
  94. t.low
  95. FROM
  96. (
  97.  
  98. SELECT generate_series(
  99. date_trunc('second', min(ticktime)) ,
  100. date_trunc('second', max(ticktime)) ,
  101. interval '1 sec'
  102. ) AS ticktime FROM czces ) x
  103.  
  104. LEFT JOIN
  105. (
  106. SELECT
  107. date_trunc('second', ticktime) AS ticktime ,
  108. max(last_price) OVER w AS high ,
  109. min(last_price) OVER w AS low
  110. FROM czces
  111. WHERE product_type ='TA' AND contract_month = '2014-08-01 00:00:00'::TIMESTAMP
  112. WINDOW w AS (
  113. PARTITION BY date_trunc('second', ticktime)
  114. ORDER BY ticktime ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING
  115. )
  116. ) t USING (ticktime)
  117.  
  118.  
  119. ORDER BY 1
  120. ;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement