title: Best performance aproach for get the last records sorted by date
body: <p>I have a table with more than 60 million records. This table has 510 columns. All columns are doubles.</p>
  <p>I created a index for date field:</p>
  <pre><code>CREATE INDEX index_btree_date ON mytable USING BTREE (date);
  </code></pre>
  <p>The table looks like this:</p>
  <pre><code>--------------------------------------------------------------
  | id | date                | fk_system | col1 | col2 | col-n |
  --------------------------------------------------------------
  | 1  | 2020-08-05 15:00:00 | 1         | 1    | 2    | 3     |
  --------------------------------------------------------------
  | 2  | 2020-08-05 15:00:00 | 2         | 1    | 2    | 3     |
  --------------------------------------------------------------
  | 3  | 2020-08-05 15:01:00 | 1         | 1    | 2    | 3     |
  --------------------------------------------------------------
  | 4  | 2020-08-05 15:01:00 | 2         | 1    | 2    | 3     |
  --------------------------------------------------------------
  | 5  | 2020-08-05 15:02:00 | 1         | 1    | 2    | 3     |
  --------------------------------------------------------------
  | 6  | 2020-08-05 15:02:00 | 2         | 1    | 2    | 3     |
  --------------------------------------------------------------
  | 7  | 2020-08-05 15:03:00 | 1         | 1    | 2    | 3     |
  --------------------------------------------------------------
  | 8  | 2020-08-05 15:03:00 | 2         | 1    | 2    | 3     |
  --------------------------------------------------------------
  
  </code></pre>
  <p>I tried to run this query:</p>
  <pre><code>SELECT t.id, t.date, t.fk_system, t.col1, t.col2, t.col3 
  FROM mytable t 
  WHERE t.fk_system = 106 
  ORDER BY t.date DESC 
  LIMIT 2880;
  </code></pre>
  <p>This query take more than <strong>5 minutes to run</strong>, very bad performance.</p>
  <p>Can someone help me?</p>
  <p>Thanks!</p>