Bonjour,

Je m'arrache les cheveux avec SQL. Je n'en suis pourtant pas à ma première requête mais là je vous avoue que je suis perdu!

Voici mon code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
select ord.OrderdataNum,
ord.OrderdataInvoice,
ord.OrderdataDate,
ord.OrderdataTotalAmount,
b.BookTitle,
cmd.CmdLineQty,
b.BookPrice,
CONCAT (a.AddressStreet, ' ', a.AddressZip, ' ', a.AddressCity, ' ', a.AddressCountry)
from OrderData ord
left join CommandLine cmd on (cmd.OrderdataNum = ord.OrderdataNum)
left join Book b on (b.BookIsbn = cmd.BookIsbn)
left join Address a on (a.AddressId = ord.AddAddressid)
where ord.CustomerId = '21'order by ord.OrderdataDate DESC;
Si je l'exécuter dans le manager SQL, pas de problème ça fonctionne. Mais en java, rien du tout.

Si maintenant je fait ceci:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
select top 1 ord.OrderdataNum,
ord.OrderdataInvoice,
ord.OrderdataDate,
ord.OrderdataTotalAmount,
b.BookTitle,
cmd.CmdLineQty,
b.BookPrice,
CONCAT (a.AddressStreet, ' ', a.AddressZip, ' ', a.AddressCity, ' ', a.AddressCountry)
from OrderData ord
left join CommandLine cmd on (cmd.OrderdataNum = ord.OrderdataNum)
left join Book b on (b.BookIsbn = cmd.BookIsbn)
left join Address a on (a.AddressId = ord.AddAddressid)
where ord.CustomerId = '21'order by ord.OrderdataDate DESC;
....et bien avec le top1, ça fonctionne!

et le pire les amis, c'est que si avec un top1 ça fonctionne, avec un top5 ça ne fonctionne plus!

Au secours!