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

Spalte nach KW sortieren

Frage Entwicklung

Mitglied: helmuthelmut2000

helmuthelmut2000 (Level 2) - Jetzt verbinden

16.11.2005, aktualisiert 20.11.2005, 6643 Aufrufe, 6 Kommentare

In einer MSSQL 2000 DB soll nach KW sortiert werden.

Hallo,

Da bin ich halt schon wieder,
mit einem Problem mit meiner MSSQL DB und mit einem Frontpageformular.
Da funktoniert jetzt dank auch eurer Hilfe in diesem Forum alles sehr gut,
bis auf die Kleinichkeiten halt.
Da hab ich eine Spalte da schreiben wir dir KW hinein wo zu Beispiel die
Arbeit erledigt sein soll.
Diese Spalte kann man auch sortieren. Doch das ist schlecht da kommt zum
Beispiel die KW 1 vor der KW 51.
Beispiel:

1. KW 1
2. KW 2
3. KW 50
4. KW 51

Es sollte aber so sein

1. KW 50
2. KW 51
3. KW 1
4. KW 2

Geht das irgendwie? Hat das Problem auch schon jemand gehabt und vielleicht
irgendwie gelöst?

Auf eure Hilfe wäre ich euch sehr dankbar.

mfg
Helmut
Mitglied: Biber
19.11.2005 um 14:35 Uhr
Moin Helmut,
das ist bei Datenbanken wie im richtigen Leben: wenn Du eine Sortierung haben willst nach Jahreszahl und KW, musst Du nach beiden sortieren.

Also in Deinem Fall nach zwei Tabellenfeldern: eines mit der Jahreszahl und eines wie bisher nach der KW. Anzeigen aber nur das KW-Feld.
Oder - Alternative 2: Du zeigst alles sortiert nach einem Deiner Datumsfelder an und blendest statt Datumsfeld das KW-Feld ein.
Oder - sauberste Variante - Du verzichtest auf ein Datenbankfeld "KW", zeigst sortiert nach Datum an und berechnest die Kalenderwoche für die Anzeige.

HTH Biber
Bitte warten ..
Mitglied: helmuthelmut2000
19.11.2005 um 19:24 Uhr
Hallo Biber,

Ich dachte das eigentlich so.
Kann ich nicht eine Vorgabe machen das
eine Spalte zum Beispiel mit dem Namen KW
mir das so sortiert, wie ich es in einer Beispielspalte
oder einem Beispielformular es vorgebe?

Gruß
Helmut
Bitte warten ..
Mitglied: Biber
19.11.2005 um 20:02 Uhr
Klar, Helmut,
Kannst Du machen. Aber ich sehe jetzt nicht den bestechenden Vorteil.
Die Anzeige würde gemäß der Reihenfolge einer unsichtbaren Sortierspalte erfolgen... soweit hätten wir die gleiche Strategie.
Was Du mit einem Beispielformular meinst, ist mir nicht ganz klar. Welche "Reihenfolgewünsche" könnte denn ein Anwender auf dieser Dateibank haben bezogen auf das Feld KW? (Nehmen wir mal an, nur 1 oder 2stellige Werte werden angezeigt)

a) Die Tabelle nach KW chronologisch:
...
51 (unsichtbar:2004)
51 (unsichtbar:2004)
52 (unsichtbar:2004)
53 (unsichtbar:2004)
1 (unsichtbar:2005)
1 (unsichtbar:2005)
2 (unsichtbar:2005)
3 (unsichtbar:2005)
....

b) Die Tabelle nach KW, neueste Daten zuerst:
3 (unsichtbar:2005)
2 (unsichtbar:2005)
1 (unsichtbar:2005)
1 (unsichtbar:2005)
53 (unsichtbar:2004)
53 (unsichtbar:2004)
52 (unsichtbar:2004)
51 (unsichtbar:2004)

Und weiter? Die beiden Möglichkeiten entsprechen doch einer Reihenfolge nach Datum, also einem Feld, das Du auf jeden Fall in der Tabelle vorliegen hast. Aus dem Feld berechnest Du heute doch dieses KW-Datenbankfeld. Und statt dessen kannst Du doch einfach ein KW-Anzeigefeld berechnen. Welche möglichen Sortierungen willst Du denn mehr "definieren" in einem Musterformular?

Grüße Biber
Bitte warten ..
Mitglied: helmuthelmut2000
20.11.2005 um 01:08 Uhr
Hallo Biber,

Wie meinst du das jetzt?
Kann ich die bestehende Spalte irgendwie als
KW Spalte machen.
Ich hab das jetzt als Text-Spalte.
Kannst du mir vielleicht da noch ein Tipp geben.

mfG
Helmut
Bitte warten ..
Mitglied: helmuthelmut2000
20.11.2005 um 14:11 Uhr
Hallo,

Was mich da jetzt noch interessiert ist wie schreibich das,
das ich inerhalb einer sortierung nochmal sorteiren kann.
Da schreib ich:
"SELECT * FROM Tabelle WHERE (Abt = '2') ORDER BY Eilt DESC,KW ASC"
Jetzt sortiert es mir aus einer Tabelle alles wo in der Spalte Abt eine 2 steht
und in der Spalte Eilt ein EILT steht absteigend und anschliesend was in der
Spalte KW Steht aufsteigend.
Wie kann ich jetzt das in der Spalte Eilt steht auch noch nach KW aufsteigend
sortieren lassen.
Ich hoffe ich hab mir richtig ausgedrückt, wenn nicht einfach nochmal
fragen.

Gruß
Helmut
Bitte warten ..
Mitglied: Biber
20.11.2005 um 14:15 Uhr
Moin Helmut,
ich versuch noch mal zu skizzieren, wie meine Strategie wäre.

Da hab ich eine Spalte da schreiben wir dir KW hinein
>>wo zu Beispiel die Arbeit erledigt sein soll.

Meine Vorstellung wäre ganz simpel, dass Ihr dort, wo ihr jetzt (wenn ich es richtig verstanden habe manuell ) ein Zeichen-Feld "PlanKW" füllt mit dem Text "KW 1" oder "KW 47" in Zukunft ein Feld "PlanKW" füllt, mit einem sortierbaren (Pseudo-)Datumswert in der Form "2006-01" oder "2005-47".
Das betrifft nur die Form der Speicherung in der Tabelle - in der Anzeige kann ja aus diesen Feld ein String in "menschen-lesbarer" Form gebastelt werden.
Angenommen ich hätte in der Tabelle "ToDoList" gespeichert:

Tabellenspeicherung:
ID Jobname;Verantwortlich;PlanKW
1 Einladung an alle MA;Sekretariat;2005-46
2 Raum buchen;Sekretariat;2005-45
3 Rede schreiben;studentische Hilfskraft;2005-50
4 Rede halten;Chef;2006-02

...dann ist mein Sortierkriterium das Feld "PlanKW", aber das zeige ich nicht an, sondern ein berechnetes Feld "KW".

Tabellenanzeige:

SELECT "KW " & Mid(PlanKW,6,2) AS KW,Jobname, Verantwortlich
FROM ToDoList
ORDER BY PlanKW DESC;

KW... Jobname;Verantwortlich
KW 02 Rede halten;Chef
KW 50 Rede schreiben;studentische Hilfskraft
KW 46 Einladung an alle MA;Sekretariat
KW 45 Raum buchen;Sekretariat

(Wobei das Select-Statement bei Dir natürlich geringfügig abweichen kann je nach SQL-Dialekt)
Grüße Biber
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (15)

Frage von liquidbase zum Thema Windows Update ...

DSL, VDSL
Problem mit variernder Internetgeschwindigkeit (12)

Frage von schaurian zum Thema DSL, VDSL ...