sql-Server: Wählen Sie Zeilen aus, deren Summe mit einem Wert übereinstimmt [duplizieren]

Diese Frage hat hier bereits eine Antwort:

Wie man Zeilen erhält, deren Summe gleich dem angegebenen Wert ist 4 Antworten

hier ist TabelleT: -

id  num
-------
 1  50
 2  20
 3  90
 4  40
 5  10
 6  60
 7  30
 8  100
 9  70
10  80

und das Folgende ist ein fiktiv sql

select *
from T
where sum(num) = '150'

das erwartete Ergebnis ist: -

(EIN

id  num
-------
 1  50
 8  100

(B)

id  num
-------
 2  20
 7  30
 8  100

(C)

id  num
-------
 4  40
 5  10
 8  100

die "A" -Fall ist am meisten bevorzugt!

ch weiß, dass dieser Fall mit Kombinationen zusammenhäng

in der realen Welt - Der Kunde erhält Artikel aus einem Geschäft, und aufgrund einer Vereinbarung zwischen ihm und dem Geschäft zahlt er jeden Freitag. Der Zahlungsbetrag ist beispielsweise nicht die exakte Summe der Artikel: Er erhält 5 Bücher zu 50 € (= 250 €) und bringt am Freitag 150 € mit, sodass die ersten 3 Bücher perfekt zusammenpassen - 3 * 50 = 150. i müssen die IDs dieser 3 Bücher finden!

Jede Hilfe wäre dankbar!

Antworten auf die Frage(3)

Ihre Antwort auf die Frage