title: ORDER month TABLE by current month
body: <p>I want to order months with the current month in final position.</p>
  
  <p>I have a subquery that returns this: </p>
  
  <pre><code>+-----+-----------+
  | one | monthname |
  +-----+-----------+
  | 1   |   Jan     |
  | 2   |   Feb     |
  | 3   |   Mar     |
  | 4   |   Apr     |
  | ... |   ...     |
  +-----+-----------+
  </code></pre>
  
  <p>Then I want to order this to get the current month (<code>MONTH(NOW())</code>) as the last value. But I keep getting the default month order.</p>
  
  <p>For example, today, in July (month n°7), I would like to have:</p>
  
  <pre><code>+-----+-----------+
  | one | monthname |
  +-----+-----------+
  |  8  |   Aug     |
  |  9  |   Sep     |
  | 10  |   Oct     |
  | 11  |   Nov     |
  | 12  |   Dec     |
  |  1  |   Jan     |
  |  2  |   Feb     |
  |  3  |   Mar     |
  |  4  |   Apr     |
  |  5  |   Mei     |
  |  6  |   Jun     |
  |  7  |   Jul     |
  +-----+-----------+
  </code></pre>
  
  <p>Is it possible to do in an SQL query? If so, what is the best way to proceed?</p>
  
  <h2>Edit</h2>
  
  <p>My current query is the following</p>
  
  <pre><code>SELECT `months`,
  IFNULL(case_result.Total_rows,0) results 
  FROM 
  (SELECT `one`,`monthname` AS months FROM 
  (SELECT 1 AS `one`, 'JANUARY' AS `monthname` 
  UNION SELECT 2 AS `one`,'FEBURARY' AS `monthname` 
  UNION SELECT 3 AS `one`, 'MARCH' AS `monthname` 
  UNION SELECT 4 AS `one`, 'APRIL' AS `monthname` 
  UNION SELECT 5 AS `one`, 'MAY' AS `monthname` 
  UNION SELECT 6 AS `one`,'JUNE' AS `monthname` 
  UNION SELECT 7 AS `one`,'JULY' AS `monthname` 
  UNION SELECT 8 AS `one`, 'AUGUST' AS `monthname`
  UNION SELECT 9 AS `one`, 'SEPTEMBER' AS `monthname` 
  UNION SELECT 10 AS `one`, 'OCTOBER' AS `monthname` 
  UNION SELECT 11 AS `one`, 'NOVEMBER' AS `monthname` 
  UNION SELECT 12 AS `one`, 'DECEMBER' AS `monthname` order by ) AS month_table) tempmonths LEFT JOIN (SELECT MONTH(date_surgery) AS `month`, COUNT(id_cases) AS Total_Rows 
  FROM cases 
  WHERE date_surgery BETWEEN DATE_SUB(NOW(), INTERVAL 11 MONTH) AND NOW()
  AND cases.name = 'Bone Tumor'
  GROUP BY MONTH(`date_surgery`)) AS case_result ON tempmonths.one = case_result.month
  </code></pre>
  
  <p>But the part that I need to order is this subquery</p>
  
  <pre><code>SELECT 1 AS `one`, 'JANUARY' AS `monthname` 
      UNION SELECT 2 AS `one`,'FEBURARY' AS `monthname` 
      UNION SELECT 3 AS `one`, 'MARCH' AS `monthname` 
      UNION SELECT 4 AS `one`, 'APRIL' AS `monthname` 
      UNION SELECT 5 AS `one`, 'MAY' AS `monthname` 
      UNION SELECT 6 AS `one`,'JUNE' AS `monthname` 
      UNION SELECT 7 AS `one`,'JULY' AS `monthname` 
      UNION SELECT 8 AS `one`, 'AUGUST' AS `monthname`
      UNION SELECT 9 AS `one`, 'SEPTEMBER' AS `monthname` 
      UNION SELECT 10 AS `one`, 'OCTOBER' AS `monthname` 
      UNION SELECT 11 AS `one`, 'NOVEMBER' AS `monthname` 
      UNION SELECT 12 AS `one`, 'DECEMBER' AS `monthname` order by ...
  </code></pre>