p'tit problème Sql - Programmation
Marsh Posté le 06-04-2001 à 08:49:21
il faudrait voir l'utilisation de MAX(ID) dans la requête
Marsh Posté le 06-04-2001 à 09:25:32
Soit max(id)
soit " select * from titre order by id desc limit 1"
Marsh Posté le 06-04-2001 à 10:22:49
Un p'tit select imbriqué?
select * from titre
where id = (select max (id) from titre)
Marsh Posté le 06-04-2001 à 10:38:11
Fred999 a écrit a écrit : Un p'tit select imbriqué? select * from titre where id = (select max (id) from titre) |
ca marche mais c'est pas le plus rapide
Marsh Posté le 06-04-2001 à 10:48:36
Moi je fait ca en général:
select top 1 * from titre order by id desc
Marsh Posté le 06-04-2001 à 11:07:36
jupiler a écrit a écrit : ca marche mais c'est pas le plus rapide |
J'ai jamais dit que ça allait tracer... Et je connais pas MySQL.
Tu as une autre idée?
Marsh Posté le 06-04-2001 à 11:42:17
quand je vois des commandes comme
select top 1 * from titre...
Jamais vu ça sous Oracle ni Sybase.
Je pense que chaque moteur prend certaines libertés avec la norme SQL standard (comme dans le traitement des dates)
Marsh Posté le 06-04-2001 à 12:10:12
Top est du SQL standard, il me semble, quand même
Sinon comment tu fais pour avoir les 25 premiers éléments d'une table ?
Marsh Posté le 06-04-2001 à 12:20:48
Pas de top en T-SQL... (SQL Server)
Bin tu fais un set rowcount 25.
Marsh Posté le 06-04-2001 à 12:36:19
il me semble que rowcount marche sous oracle... a verifier
Marsh Posté le 06-04-2001 à 12:36:39
En mysql
c'est limit 25
Marsh Posté le 06-04-2001 à 13:04:19
Bon
Euh excuse moi Fred mais Top marche très bien sous SQL Server
De plus, le posteur veut une requête et pas du code de SGBD (TSQL,PLSQL,...), donc le rowcount faut carrément oublier
Pis MySQL n'est pas standard SQL alors
Marsh Posté le 06-04-2001 à 13:49:55
Marrant, alors c'est T-SQL qui le refuse... Bon, on ne va pas jouer les intégristes du SQL... Et je ne connais pas le code propriétaire MySQL pour ce truc.
Marsh Posté le 06-04-2001 à 13:58:21
thegti a écrit a écrit : Bon Euh excuse moi Fred mais Top marche très bien sous SQL Server De plus, le posteur veut une requête et pas du code de SGBD (TSQL,PLSQL,...), donc le rowcount faut carrément oublier Pis MySQL n'est pas standard SQL alors |
Si tu regardes le code qu'il présente tu vois qu'il execute ses requetes sur une base de type mysql, donc on essaie de répondre au mieux de ses besoins !!
Marsh Posté le 06-04-2001 à 14:23:43
Fred999 a écrit a écrit : Euh... Tu t'adresses à qui là? |
A thegti
Marsh Posté le 06-04-2001 à 14:26:02
Ouais
mysql_query("SELECT MAX(id) FROM titre" );
ca marche bien
Marsh Posté le 05-04-2001 à 23:36:46
A priori cela devrait sembler simple a qq qui connait le language Sql.
J'ai donc une base de données qui contient des infos triées par in id. Le code ci-dessous me permet d'afficher toute la base par ordre décroissant d'id.
Comment faire pour qu'il ne me selectionne que le dernier id (cad le plus élevé) ?
$requete=mysql_query("select * from titre order by id desc" );
while ($ligne = mysql_fetch_object($requete)) {
print "
Merci