Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

20 Datensätze als Toplist in 2te tabele anfügen

Frage Entwicklung Datenbanken

Mitglied: tim1986

tim1986 (Level 1) - Jetzt verbinden

03.01.2009, aktualisiert 01:45 Uhr, 3678 Aufrufe, 4 Kommentare, 1 Danke

Hallo und frohes neues erstmal...

ich versuche Umsatzdaten in eine 2te Tabelle (für ein externes Tool) zu kopieren hier bei sollen nur die Datensätze mit dem summierten umsätzen (in form einer Top liste) selectiert werden.
im endeffekt soll es dann so aussehen

id | adressnummer | jahr | budget | Gruppe
-1-----0815---------2009----15000---TOP20
-1-----0816---------2009----15000---TOP20

usw.

hier erstma der code den ich bis jetzt habe

01.
declare @jahr varchar (4) 
02.
declare @umsatz float 
03.
declare @adressnummer float 
04.
 
05.
select TOP (20) datepart (year,b.datum)as @jahr, sum (euronetto) as @umsatz , b.adressnummer as @adressnummer 
06.
from beleg as b 
07.
where belegtyp = 'R' and  :Datum = datepart (year,b.datum) 
08.
group by b.datum , b.adressnummer 
09.
update SLWL_BudgetJahr set Jahr = @Jahr, budget= @umsatz, adressnummer= @adressnummer 
10.
 
Ich hoffe mir kann jemand helfen! Hab warscheinlich riesen Fehler mit den Variablen gemacht aber mit dehnen Arbeite ich heute auch zum ersten mal^^

ach ja sorry hab ich vergessen zu sagen ich nutze MS SQLEXPRESS 2005
Mitglied: Biber
03.01.2009 um 16:33 Uhr
Moin tim1986,

da hätte ich aber ein paar Rückfragen zu Deinem Plan, bevor ich da hilfreiche Tipps poste...

Deine Zieltabelle "SLWL-BudgetJahr"...
  • ist bereits vorhanden/nicht vorhanden?
  • oder hat gar schon bestehende Datensätze?? Oder WTF willst Du dort UPDATEn?
  • wofür die "ID" in dieser Tabelle?!? Und welchen informativen Nährwert hat der Wert "TOP20" im Feld "Gruppe" ? Baggerst Du auch noch in die gleiche Tabelle andere Datensätze wie "TOP44" oder "FLOPS2000"??

Grüße
Biber
Bitte warten ..
Mitglied: tim1986
03.01.2009 um 21:18 Uhr
moin Biber,
also

1,2.) ist bereits vorhanden und sind auch schon daten drin bzw können auch zwischendurch daten dazu kommen...

3.) mit der id bin ich mir nicht ganz sicher für mich hat sie keinen ersichtliche bedeutung allerdings kann es sein das das externe tool darauf zurückgreift wozu auch immer... sie wird lso immer nur vortlaufend ergänzt

3.1) ja genau, die Gruppe dient nur der zuordnung einer auswertungs gruppe, sollte also variable sein.

Mit freundlichen Grüßen

Tim
Bitte warten ..
Mitglied: Biber
04.01.2009 um 01:30 Uhr
Moin tim1986,

nun denn... ich hoffe, dass zumindest diese Kann-sein-dass-ich-die-irgendwann-mal-brauche-ID einen automatisch generierten Wert zugewiesen bekommt (also IDENTITY-Charakter hat in Deiner Struktur.
Bewusst ignorieren will ich mal die bei Dir angedeutete Konvertierung des "Jahr"-Wertes in einen VarChar - das verweisen wir mal in den Bereich der Tippfehler bzw. Fabeln.

Was dann bleibt ist ein stinknormales INSERT INTO-Statement.
Mit einem SELECT INTO-Statement würdest Du die Zieltabelle neu und nur mit den SELECTierten Datensätzen anlegen - dies hätte ich eigentlich erwartet.
01.
INSERT INTO SLWL_BudgetJahr ( jahr, budget, adressnummer, gruppe) 
02.
select TOP 20 datepart( year, b.datum), 
03.
sum (euronetto), 
04.
b.adressnummer, 
05.
Max('TOP 20') 
06.
FROM beleg as b 
07.
where b.belegtyp = 'R' and  2009 = datepart (year, b.datum) 
08.
group by datepart( year, b.datum), 
09.
 b.adressnummer 
10.
ORDER BY 2 DESC
Ungetestet, daher könnte es sein, dass das Literal 'TOP 20', also der feste Text, der in das Feld "Gruppe" eingefügt werden soll, einen SQL-Error verursacht, weil er so nicht mit einer Aggregatfunktion erzeugt werden kann.
Aber so wäre erst mal der erste Versuch.

Sollte es einen Fehler geben: bitte dann das Statement OHNE die erste Zeile abfeuern und sehen was passiert.

Grüße
Biber
Bitte warten ..
Mitglied: tim1986
04.01.2009 um 02:10 Uhr
Super funktioniert wunderbar vielen dank für die schnelle hilfe
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Microsoft Office
Mehr als 20 Excel Dateien öffnen gleichzeitig (7)

Frage von PizzaPepperoni zum Thema Microsoft Office ...

Windows Netzwerk
PPTP-VPN Abbruch nach 20 Sekunden (13)

Frage von Otomombe zum Thema Windows Netzwerk ...

Heiß diskutierte Inhalte
Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

Grafikkarten & Monitore
Tonprobleme bei Fernseher mit angeschlossenem Laptop über HDMI (11)

Frage von Y3shix zum Thema Grafikkarten & Monitore ...

Microsoft Office
Keine Updates für Office 2016 (11)

Frage von Motte990 zum Thema Microsoft Office ...