Requete sql

Résolu/Fermé
deneb - 8 déc. 2011 à 10:47
Heremion Messages postés 539 Date d'inscription vendredi 20 mai 2011 Statut Membre Dernière intervention 1 juin 2022 - 8 déc. 2011 à 14:16
Bonjour,

je cherche à faire une requete SQL sur php particulière :
je veux sélectionner toutes les infos pour chaque ligne de ma table (de 1 à 5) sauf une info qui correspond toujours à la meme ligne (4).
je ne sais pas comment faire.

merci de l'aide.

9 réponses

mfiras Messages postés 171 Date d'inscription mardi 19 janvier 2010 Statut Membre Dernière intervention 9 mai 2013 26
8 déc. 2011 à 10:59
bonjour
avez vous des id auto incriment dans votre table?
0
Heremion Messages postés 539 Date d'inscription vendredi 20 mai 2011 Statut Membre Dernière intervention 1 juin 2022 102
8 déc. 2011 à 11:06
Bonjour Deneb,

Peux-tu nous montrer ta table et les champs qu'elle contient stp?

Si ta table contient une clé primaire, tu peux utiliser la requête suivante :

select *
from TaTable
where TaPk <> LaPk_DeTaLigneAExclure ;

si maintenant elle n'a pas de clé primaire, comment identifies-tu chaque ligne?
0
voici ma table qui a une clé primaire :

CREATE TABLE IF NOT EXISTS 'categories2' (
'id_cat' int(11) NOT NULL auto_increment,
'categorie' varchar(50) NOT NULL,
'titre' varchar(100) NOT NULL,
'vehicule' varchar(50) NOT NULL default '0',
'image' varchar(100) NOT NULL,
'nb_pers' varchar(100) NOT NULL default '9',
'nbjour' int(6) NOT NULL default '1',
'info' varchar(2) NOT NULL default '9',
'tarif' decimal(10,2) NOT NULL,
'nbkm' int(8) NOT NULL default '50',
'coeff1j1' decimal(5,3) NOT NULL,
'coeff2j1' decimal(5,3) NOT NULL,
'coeff3j1' decimal(5,3) NOT NULL,
'coeff4j1' decimal(5,3) NOT NULL,
'coeff5j1' decimal(5,3) NOT NULL,
'coeff6j1' decimal(5,3) NOT NULL,

PRIMARY KEY ('id_cat')
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=6 ;
0
Heremion Messages postés 539 Date d'inscription vendredi 20 mai 2011 Statut Membre Dernière intervention 1 juin 2022 102
8 déc. 2011 à 11:23
Dans ce cas,

tu peux utiliser la requête que je t'ai donné. Si tu sais que l'id que tu ne veux pas récupérer est le 4, il te suffit d'écrire :
SELECT *
FROM CATEGORIES2
WHERE ID_CAT <> 4 ;



0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
non, j'ai du mal m'exprimer.
je veux sélectionner tous les id.
mais pour tous les id , je veux :
-sélectionner les champs
-sauf un champ qui est celui de l'id = 4.

-> id = 1 : champ1 de l'id1 + champ2 de l'id4
-> id = 2 : champ1 de l'id2 + champ2 de l'id4
...
0
Heremion Messages postés 539 Date d'inscription vendredi 20 mai 2011 Statut Membre Dernière intervention 1 juin 2022 102
8 déc. 2011 à 13:41
Alors dans ce cas, un truc dans ce genre :

SELECT champ1_idencours ,
    ( SELECT champ2 FROM CATEGORIES2 WHERE id_cat = 4 ) AS champ2_id4
FROM CATEGORIES2

0
dans ce cas, je ne récupère que les lignes qui ont un champ égal à celui de l'id 4.
0
j'avais mal lu. ça marche! merci beaucoup !
0
Heremion Messages postés 539 Date d'inscription vendredi 20 mai 2011 Statut Membre Dernière intervention 1 juin 2022 102
8 déc. 2011 à 14:16
Tu peux donner un exemple concret avec quelques données stp?

0