#1242 - Subquery returns more than 1 row

Fermé
waeleaw Messages postés 4 Date d'inscription vendredi 31 janvier 2014 Statut Membre Dernière intervention 31 janvier 2014 - 31 janv. 2014 à 12:18
waeleaw Messages postés 4 Date d'inscription vendredi 31 janvier 2014 Statut Membre Dernière intervention 31 janvier 2014 - 31 janv. 2014 à 15:31
Bonjour,
mon code est le suivant:
SELECT 'localisation'
FROM 'ordinateur'
WHERE 'indentifiant_ordinateur'
= (

SELECT DISTINCT 'identifiant_ordinateur'
FROM 'acheter'
WHERE 'date_achat' = '2007-01-01'
LIMIT 0 , 30
)
LIMIT 0 , 30

j'ai comme message :#1242 - Subquery returns more than 1 row
que faire
merci sachant que j'utilise my phpadmin

4 réponses

jee pee Messages postés 40423 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 5 novembre 2024 9 414
Modifié par jee pee le 31/01/2014 à 14:34
Bonjour,

Dans ton sous select tu peux ramener 30 lignes (limit 0,30) , donc tu ne peux pas utiliser l'opérateur = qui n'attend qu'une seule valeur (Subquery returns more than 1 row), tu pourrais ne ramener qu'une ligne en mettant limit 0,1

Mais pour aller plus dans le sens de la logique de ton sql, je pense que plutôt qu'égal, il faudrait utiliser l'opérateur IN qui autorise plusieurs réponses dans le sous select :

WHERE 'indentifiant_ordinateur' IN ( SELECT ...

Cdlt

        Un étranger, c'est un ami qu'on n'a pas encore rencontré.
8