limit qui me rend fou

limit qui me rend fou - SQL/NoSQL - Programmation

Marsh Posté le 18-07-2006 à 12:34:08    

Bonjour,
je suis ne train de faire un site web en php avec une base Mysql.
J'ai une table "fiche" dans ma base de données qui contient 31 champs.
j'ai voulu faire une requête ou je ne selectionne que les 30 derniers champs.
Voilà ma requête:
SELECT * FROM fiche  where date_saisie BETWEEN "2004-02-02 " and "2008-02-02" LIMIT 1,30
 
 
mais elle me retoourne rien. sachant que le premier champ est la clé(mais ça ne change rien à ma connaissance).
Quand j'essaie de faire avec limit 0,30 (tous les champs) ça marche.
Quelqu'un peut m'aider?

Reply

Marsh Posté le 18-07-2006 à 12:34:08   

Reply

Marsh Posté le 18-07-2006 à 12:44:13    

y'a du boulot :sweat:
 
1) tu parles de LIGNES dans ton post, pa de CHAMPS (les champs, c'est les colonnes)
2) les chaînes de caractères en SQL, c'est entre ' et non entre "
3) y'a absolument aucune raison pour que changer de LIMIT 0,30 à LIMIT 1,30 ne marche pas...
4) Vire ton between déjà, histoire d'être certain que c'est pas plutôt lui qui fout la merde.
5) Un LIMIT sans ORDER BY, c'est du suicide : l'ordre des données dans une table n'est absolument pas garanti, et peut donc changer d'une instruction SELECT à une autre

Reply

Marsh Posté le 18-07-2006 à 12:45:21    

accessoirement : c'est quoi ton SGBD ? consulte sa doc pour vérifier le fonctionnement du LIMIT, il peut différer d'un SGBD à l'autre, puisqu'il n'est pas normé.

Reply

Marsh Posté le 18-07-2006 à 12:46:18    

ok je vais essayer de faire ce que t'as dit pour le moment...

Reply

Marsh Posté le 18-07-2006 à 12:49:54    

C'est mysql. Je vais essayer de chercher encore, car ça ne marche toujours pas

Reply

Marsh Posté le 18-07-2006 à 13:02:12    

Je me suis trompé en fait. J'ai 30 champs dans ma table et une seule ligne et je veux afficher les valeur des 30 derniers champs pour cette ligne. Limit n'était pas le bon choix. Y'a t il un autre mot clé qui me permet de faire ça? genre 'select* sauf le premier'

Reply

Marsh Posté le 18-07-2006 à 13:24:48    

tu indiques les champs que tu veux dans ton select ... et c'est bon [:spamafote]

Code :
  1. select champs2, ..., champs 30 from tatable

Reply

Marsh Posté le 18-07-2006 à 13:47:47    

Oui je sais qu'on peut faire ça, mais justement, moi je voulais eviter d'écrire 30 champs. Donc je cherche une expression qui dit on prend tous les champs sauf le premier

Reply

Marsh Posté le 18-07-2006 à 13:53:56    

31 champs... on peut voir ton mcd ? :)


---------------
Hobby eien /人◕ ‿‿ ◕人\
Reply

Marsh Posté le 18-07-2006 à 13:57:14    

c'est quoi le mcd?

Reply

Marsh Posté le 18-07-2006 à 13:57:14   

Reply

Marsh Posté le 18-07-2006 à 14:07:33    

c'est rien de très important manifestement...
 
edit : as tu une vague notion de conception merisienne ? comment as tu fait tes tables ?

Message cité 1 fois
Message édité par Tamahome le 18-07-2006 à 14:08:16

---------------
Hobby eien /人◕ ‿‿ ◕人\
Reply

Marsh Posté le 18-07-2006 à 14:16:06    

Pour faire mes tables, je fais un schéma entités-relations et après je le transforme en table à la main tout en vérifiant qu'il est au moins FN3

Reply

Marsh Posté le 18-07-2006 à 14:17:17    

Tamahome a écrit :

c'est rien de très important manifestement...
 
edit : as tu une vague notion de conception merisienne ? comment as tu fait tes tables ?


access > assistant d'import depuis Excel, puis copier/coller des bidules dans phpmyadmin je suppose [:anathema]

Reply

Marsh Posté le 18-07-2006 à 14:18:04    

mbarekh a écrit :

Pour faire mes tables, je fais un schéma entités-relations et après je le transforme en table à la main tout en vérifiant qu'il est au moins FN3


 
ah bah voila :)
 
et on pourrait voir le schéma stp ? :)


---------------
Hobby eien /人◕ ‿‿ ◕人\
Reply

Marsh Posté le 18-07-2006 à 14:22:19    

Mais je l'ai fait à l amian c'est écrit sur un papier et c'est fait depuis longtemps. S'il nya pas d'autres solutions, j'ecirirai les 30 champs à la suite.
En fait ces champs représentent la description d'une fiche(date de saisie, signataire, date d'échéance, titre, langue ......)

Reply

Marsh Posté le 18-07-2006 à 14:27:29    

y a pas d'autre solution faut les écrire à la main.
Mais bon un petit copier coller et c'est bon... ;)

Reply

Marsh Posté le 18-07-2006 à 14:35:41    

merci!

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed