Précédent   Forum des professionnels en informatique > Bases de données > MySQL > Requêtes
Requêtes Forum d'entraide sur les requêtes MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 05/05/2011, 13h18   #1
Invité de passage
 
Inscription : juillet 2004
Messages : 8
Détails du profil
Informations forums :
Inscription : juillet 2004
Messages : 8
Points : 3
Points : 3
Par défaut Requete enregistrement manquant

* Bonjour, *

j'ai une table switchs(id,ip,building,...)
et quand je fais cette requête
Code :
1
2
3
4
5
6
7
SELECT *
FROM `switchs`
WHERE 1 AND `building`
IN (
"A14"
)
LIMIT 100
je ne n'ai pas l'ensemble des enregistrements.
Pour donner un exemple
quand je fais la requête suivante :
Code :
1
2
3
4
5
6
7
8
9
SELECT *
FROM `switchs`
WHERE 1 AND `building`
IN (
 
SELECT building
FROM switchs
WHERE ip = "10.142.20.34"
)
Je n'ai pas l'enregistrement avec l'IP 10.142.20.34

Merci
monoplyfr est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 13h44   #2
Invité de passage
 
Inscription : juillet 2004
Messages : 8
Détails du profil
Informations forums :
Inscription : juillet 2004
Messages : 8
Points : 3
Points : 3
Autre exexemple qui montre que ma BDD deviens folle
Code :
SELECT * FROM `switchs` WHERE netmask = "255.255.252.0"
=> 233 enregistrements

Code :
SELECT * FROM `switchs` WHERE netmask = "255.255.252.0" AND ip LIKE ("10.142.%")
=> 304 enregistrements
monoplyfr est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/05/2011, 15h59   #3
Modérateur
 
Avatar de CinePhil
 
Homme Philippe Leménager
Ingénieur d'études en informatique
Inscription : août 2006
Messages : 10 998
Détails du profil
Informations personnelles :
Nom : Homme Philippe Leménager
Âge : 48
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur d'études en informatique
Secteur : Enseignement

Informations forums :
Inscription : août 2006
Messages : 10 998
Points : 18 262
Points : 18 262
Envoyer un message via MSN à CinePhil
1ère requête :
Citation:
je ne n'ai pas l'ensemble des enregistrements.
Normal !
Tu ne sélectionnes que les 100 premiers switches du building A14 !

2ème requête :
Une jointure serait meilleure qu'un WHERE IN !

Le résultat de ton second message est par contre très étonnant vu que tu réduis potentiellement les lignes dans la seconde requête par rapport à la première !

Sinon, les valeurs textuelles s'écrivent entre apostrophes, pas entre guillemets !
Et pas besoins de mettre la valeur cherchée du LIKE entre parenthèses !
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique.
Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework...
« Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française !
Linuxiens, comptez-vous !
CinePhil est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 10h04.


 
 
 
 
Partenaires

Hébergement Web