Sous-Requete qui affiche au plus un enregistrement
Résolu/Fermé
Bonjour ; jai une table
TRANSACTION( id_transaction;date_transaction;type_tansaction ; montant_transaction)
qui m'a permis de faire la requête suivante avec le code sql :
le problème qui se pose c'est quand je saisie plusieurs enregistrements dans ma table et que je consulte ma requete il m'affiche un message d'erreur
" cette sous requête peut retourner au plus un enregistrement"
comment régler ce problème
merci d'avance
EDIT : Ajout des balises de code.
TRANSACTION( id_transaction;date_transaction;type_tansaction ; montant_transaction)
qui m'a permis de faire la requête suivante avec le code sql :
SELECT
( SELECT TOP 1 Montant_Transaction
FROM TRANSACTION AS DUP
WHERE DUP.IdTransaction <Transaction.IdTransaction
ORDER BY Date_Transaction DESC) AS MontantMouvement
, ( Select TOP 1 Type_Transaction
FROM TRANSACTION AS DUP
WHERE DUP.IdTransaction<Transaction.IdTransaction
ORDER BY Date_Transaction DESC ) AS TypeMouvement
, *
FROM [TRANSACTION];
le problème qui se pose c'est quand je saisie plusieurs enregistrements dans ma table et que je consulte ma requete il m'affiche un message d'erreur
" cette sous requête peut retourner au plus un enregistrement"
comment régler ce problème
merci d'avance
EDIT : Ajout des balises de code.
3 réponses
-
ModérateurBonjour,
Pourquoi ne fais tu pas simplementSELECT TOP 1 Montant_Transaction AS MontantMouvement ,Type_Transaction AS TypeMouvement , * FROM TRANSACTION AS DUP WHERE DUP.IdTransaction <Transaction.IdTransaction ORDER BY Date_Transaction DESC
-
-
-
Contributeur@Oholabi1234bonjour,
examine bien le nom des champs de la table, et vérifie qu'ils sont correctement écrits dans la requête. -
@yg_beJe tiens compte de ma requête ou celle de jordane 45 pour la vérification ?
-
Contributeur@Oholabi1234pourquoi ne pas travailler sur les deux?
-
-
Contributeurtu avais écrit que la requête demande de rentrer une valeur de parametre :
transaction.idtransaction-
Elle marche maintenant parce que j'ai remplacé Transaction.idtransaction par Dup.idtransaction en effet, elle Permet de faire des saisies qui se déversent dans la table Transaction.
En fait je souhaiterais faire un état qui affiche le solde à l'ouverture de la journée et c'est cette collone qui ne fonctionne pas bien -
@Oholabi1234En fait la requête devra être utilisée pour afficher un état avec les colonnes suivantes :
Idtransaction
Datetransaction
Solde ouverture
Montant transaction
Type Transaction
soldecloture -
Contributeur@Oholabi1234pourquoi changes-tu d'identifiant sur le forum?
si tu as modifié la requête, ne penses-tu pas qu'il serait utile de nous montrer la nouvelle requête? -
@yg_beConcernant mon identifiant c'est une erreur de manipulation
-
-
SELECT TOP 1 DUP.Montant_Transaction AS MontantMouvement, DUP.Type_Transaction AS TypeMouvement, DUP.Date_Transaction, DUP.IdTransaction, *
FROM [TRANSACTION] AS DUP
WHERE (((DUP.IdTransaction)<[DUP].[IdTransaction]))
ORDER BY DUP.Date_Transaction DESC;-
-
@yg_benon elle ne retourne rien de bizarre ; elle permet de faire les saisies des differentes transactions et ces saisies se retrouvent dans la table trasactions
-
Contributeur@oholabi1234cette requête retourne-t-elle quelque chose?
peux-tu montrer cela? -
@yg_beEn fait quand j'ouvre la requête les champs sont vides
-
Contributeur@Oholabi1234cela me semble normal, vu la requête.
-