1

$rowに2番目のレコードを表示したいと思います。

これが私の質問です

select    LEFT(A.F_ANOTRIMESTRE, 4) Year,
      RIGHT(A.F_ANOTRIMESTRE, 2) Quarter,

      IF(RIGHT(A.F_ANOTRIMESTRE, 2)=03,'Enero a Marzo',
      IF(RIGHT(A.F_ANOTRIMESTRE, 2)=06,'Abril a Junio',
      IF(RIGHT(A.F_ANOTRIMESTRE, 2)=09,'Julio a Septiembre',
      IF(RIGHT(A.F_ANOTRIMESTRE, 2)=12,'Octubre a Diciembre',
      '')
      ))) Quarter_Name,

      ROUND(A.POR_RENTABILIDAD, 2) Quarterly_yield

from      dr_rent_carteras_trimestres A
where     A.ID_CARTERA = $ID_CARTERA
And       A.IND_RENTABILIDAD = 1

Order by A.F_ANOTRIMESTRE asc

これがphpです。

while($row = mysql_fetch_array($result))
  {
    $currentState = ($currentState == 'odd' ? 'even' :'odd' );


 echo "<tr id='centered' >";  echo "<td class='leftalign'>" . $row['Quarter_Name'] .     "</td>";

echo "<td>" . $row['Quarterly_yield'] . "</td>";




  echo "</tr>";
  }
echo "</tbody></table>";

Quarterly_yieldで2番目のレコードを取得したいと思います。それをどのように表示しますか?

4

1 に答える 1

3

PHPから実行する場合は、他の配列と同じように、結果にインデックスを付けることができます。

または、クエリの最後にLIMIT 1,1を使用して、MySQLからこれを行うこともできます。たとえば、変更したクエリは次のとおりです。最後の行に注意してください。

select    LEFT(A.F_ANOTRIMESTRE, 4) Year,
  RIGHT(A.F_ANOTRIMESTRE, 2) Quarter,
  IF(RIGHT(A.F_ANOTRIMESTRE, 2)=03,'Enero a Marzo',
  IF(RIGHT(A.F_ANOTRIMESTRE, 2)=06,'Abril a Junio',
  IF(RIGHT(A.F_ANOTRIMESTRE, 2)=09,'Julio a Septiembre',
  IF(RIGHT(A.F_ANOTRIMESTRE, 2)=12,'Octubre a Diciembre',
  '')
  ))) Quarter_Name,
  ROUND(A.POR_RENTABILIDAD, 2) Quarterly_yield
  from      dr_rent_carteras_trimestres A
  where     A.ID_CARTERA = $ID_CARTERA
  And       A.IND_RENTABILIDAD = 1
  Order by A.F_ANOTRIMESTRE asc
  LIMIT 1,1
于 2012-12-05T17:12:50.730 に答える