13. oktober 2005 - 07:57Der er
3 kommentarer og 1 løsning
SQL Forespørgsel
Hej
Jeg har en tabel for følger:
Value Mat Vaegt I 18703708 25.6800 U 16603702 21.8300 U 18633708 31.6600 U 18703708 31.7200 U 16483822 18.1800 U 18633708 31.5200 U 18633708 31.6800 U 18703708 26.5800 U 18633708 30.7800 I 16483822 18.1600
I står for at et materiale er kørt ind på lageret, og u for at det er taget ud, materialet bliver vejet ind og når det tages ud igen, det jeg gerne vil have er en forespørgsel som pr materiale kan vise mig hvor meget der er kørt ind og ud, plus den eventuelle dif der måtte være.
Først, så synes jeg du skal finde en anden måde at registrere om varen kommer ud eller ind. Hvis nu du simpelthen skriver et negativt tal hvis varen bevæger sig ud? Man kan også vælge at have to kolonner, én til ud og én til ind, men det behøves ikke.
Gør blot sådan, én gang for alle: UPDATE tabellen SET vaegt = vaegt * -1 WHERE vaegt > 0 AND Value = 'U'
Så kan du lave det sådan:
SELECT Mat, SUM(vaegt) AS [ændring i lagerbeholdning] FROM tabellen GROUP BY Mat
og
SELECT Mat, SUM(vaegt) AS [Kørt ind] FROM tabellen WHERE vaegt > 0 GROUP BY Mat SELECT Mat, SUM(vaegt) AS [Kørt ud] FROM tabellen WHERE vaegt < 0 GROUP BY Mat
Jeg har ikke mulighed for at ændre data i tabellen, da det vil kræve at vores levenradør skal ændre deres programmer, derfor skal det være udtræk ud fra det som vi har i tabellen, desværre da jeg godt kan følge dig.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.