Mysql Sélectionnez la deuxième rangée
J'ai une base de données mysql question.
J'ai une nouvelle section sur mon site, et je veux afficher les deux derniers articles.
Si je fais:
SELECT * FROM nieuws ORDER BY id DESC LIMIT 1
il sélectionne le dernier élément,
et maintenant, je veux sélectionner la seconde sur le dernier élément.
Avez-vous les gars savent comment faire?
///EDIT
Maintenant, il ne fonctionne pas, voici mon code: (j'ai connecter inclus 😉 )
$select = mysql_query("SELECT * FROM nieuws ORDER BY id DESC LIMIT 1");
while($row = mysql_fetch_assoc($select)) {
$datum = $row['time'];
$titel = $row['title'];
$bericht = $row['message'];
?>
<div class="entry">
<span class="blue date"><?php echo "$datum"; ?></span>
<h3><?php echo "$titel"; ?></h3>
<p><?php echo "$bericht"; ?></p> <br />
</div><!-- end of entry --> <?php } ?>
<?php
$select2 = mysql_query("SELECT * FROM nieuws ORDER BY id DESC LIMI 1, 1");
while($row2 = mysql_fetch_assoc($select2)) {
$datum = $row2['time'];
$titel = $row2['title'];
$bericht = $row2['message'];
?>
<div class="entry">
<span class="green date"><?php echo "$datum"; ?> </span>
<h3><?php echo "$titel"; ?></h3>
<p><?php echo "$bericht"; ?></p>
</div> <!-- end of entry --> <?php } ?>
</div><!-- end of news -->
source d'informationauteur Andre
Vous devez vous connecter pour publier un commentaire.
SELECT * FROM nieuws ORDER BY id DESC LIMIT 2
- sélectionne les 2 derniers articlesSELECT * FROM nieuws ORDER BY id DESC LIMIT 1, 1
- sélectionne seulement le deuxième élémentLIMIT
peut prendre deux arguments:Si vous souhaitez afficher les deux derniers articles, alors vous pouvez avoir les deux en même temps, en limitant à 2 au lieu de 1. Cela signifie qu'il est seulement une base de données de frapper pour obtenir les informations dont vous avez besoin.
Ou si vous voulez seulement la deuxième ligne, vous pouvez donner un offset à la LIMITE, pour lui dire quelle ligne de démarrer à partir d', (Bien que si vous obtenez la première rangée dans une requête, puis prenez la deuxième à un autre, vous faites de la base de données deux coups pour obtenir les données que vous voulez, ce qui peut affecter les performances).
Vous pouvez trouver plus d'informations sur la façon d'utiliser la clause LIMIT dans le Documentation de MySQL.
SELECT * from table where id >(SELECT id from table order by id ASC limite1,1) et id <=(select max(id) from table)