Bonjour, je cherche à récuperer dans une de mes tables la ligne corrspondant à la dernière date entrée (dernière date, dernière heure,...)
Mon champs date est au format timestamp Quelqu'un peut-il m'aider ?
Bonjour, je cherche à récuperer dans une de mes tables la ligne corrspondant à la dernière date entrée (dernière date, dernière heure,...)
Mon champs date est au format timestamp Quelqu'un peut-il m'aider ?
:
sans rien connaitre, je regarderai
1 en indexant le champ et prendre le dernier (ASC) ou premier si (DESC)
2 soit avec max ( date) a essayé
josé
un autre chercheur qui ne trouve pas
Bonjour,
Cela ne fonctionne pas sur un timestamp ??? .....
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT MAX(date) FROM maTable
et si tu veux le record....
A+ Jérôme
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 select * from matable where madate = (select max(madate) from matable);
Merci , effectivement ça fonctionne, il suffisait d'y penser !!!
Sinon il y a un moyen de récupérer de cette manière les 10 dernières ???
Merci beaucoup !!
Pas facile... si tu peux te baser sur la clé ou autre attibuts qui peuvent t'aider, cela peut fonctionner, sinon c'est pas facile de faire ce genre de requête. Mais je réfléchi et je te redirai...
A+ Jérôme
si tu rajoutes à ela les fonctionalitès de ta techno, par exemple PHP cela devient un jeu d'enfant, puisuqe tu peux récupérer ton résultat dans un tableau.Envoyé par Fyna
Mais si tu fais cela chez le client, se sera tjs plus lent... donne moi la description de ta table et je regarde...
A+
PHP est exécuté coté serveur!Envoyé par Bouboubou
oui d'accord si le serveur web est le même que le serveur de BD (postgreSQL)! Pas tjs le cas! Pis même dans ce cas là, je pense qu'une procédure stockée est plus rapide que si c'est le client qui le fait les contrôles!
A+
Et bien non, je n'utilise pas la techologie php ... ma table est comme suit :
Voilà ma table, en fait j'accède à la table par JDBC et donc j'ai fais un select qui récupère toutes les valeurs correspondant à toutes les dates d'un equipement en les classant et c'est dans ma méthode Java que je fais un "for" pour récupérer seulement les 10 dernières ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 table mesure( id_mesure integer, date_mesure timestamp, valeur_mesure varchar, id_equipement foreign key integer id_type_mesure foreign key integer)
Y'a-t-il un méthode plus efficace que de tous récupérer ? en faisant la selection dans la requête SQL est-ce possible ???
Toutes vos suggestions sont les bienvenues !!!
Merci !...
Hello encore moi,
Voilà j'ai trouvé ta solution: sous PostgreSQL, il y a un mot clé pour limiter les nombre d'enregistrements.
Code : Sélectionner tout - Visualiser dans une fenêtre à part select * from mesure oder by date_mesure limit 10;
Voilà....
A+ Jérôme
Encore un mot pour ceux qui veulent faire cela sous d'autre SGBD!
Informix:DB2:
Code : Sélectionner tout - Visualiser dans une fenêtre à part select first 10 from tableMicrosoft SQL Server et Access:
Code : Sélectionner tout - Visualiser dans une fenêtre à part select from table fetch first 10 rows onlyMySQL et PostgreSQL:
Code : Sélectionner tout - Visualiser dans une fenêtre à part select top 10 from tableOracle :
Code : Sélectionner tout - Visualiser dans une fenêtre à part select from table limit 10A+ Jérôme
Code : Sélectionner tout - Visualiser dans une fenêtre à part select * from table where rownum <= 10
Merci beaucoup, qu'est-ce que ça marche bien !!
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager