title: T-SQL: Using OVER and PARTITION BY
body: <p>I have the following data </p>
  
  <pre><code> |  Item  | Value |    Date   |
   ------------------------------
   |   1    |  10   | 01.01.2010
   |   1    |  20   | 02.01.2010
   |   1    |  30   | 03.01.2010
   |   1    |  40   | 04.01.2010
   |   1    |  50   | 05.01.2010
   |   1    |  80   | 10.01.2010
   |   2    |  30   | 04.01.2010
   |   2    |  60   | 06.01.2010
   |   2    |  70   | 07.01.2010
   |   2    |  80   | 08.01.2010
   |   2    |  100  | 09.01.2010
  </code></pre>
  
  <p>And the following statement</p>
  
  <pre><code>SELECT   Item, Value, MIN(Date) OVER (PARTITION BY Item) 
  FROM     Data
  WHERE    Value &gt;= 50   
  </code></pre>
  
  <p>And I get the following result</p>
  
  <pre><code> |  Item  | Value |    Date   |
   ------------------------------
   |   1    |  50   | 05.01.2010
   |   1    |  80   | 05.01.2010
   |   2    |  60   | 06.01.2010
   |   2    |  70   | 06.01.2010
   |   2    |  80   | 06.01.2010
   |   2    |  100  | 06.01.2010
  </code></pre>
  
  <p>But what I need is this</p>
  
  <pre><code> |  Item  | Value |    Date   |
   ------------------------------
   |   1    |  10   | 05.01.2010
   |   1    |  20   | 05.01.2010
   |   1    |  30   | 05.01.2010
   |   1    |  40   | 05.01.2010
   |   1    |  50   | 05.01.2010
   |   1    |  80   | 05.01.2010
   |   2    |  30   | 06.01.2010
   |   2    |  60   | 06.01.2010
   |   2    |  70   | 06.01.2010
   |   2    |  80   | 06.01.2010
   |   2    |  100  | 06.01.2010
  </code></pre>
  
  <p>Is there any quick solution to get this with one statment without a self-join?</p>
  
  <p>Thank you :)</p>