AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Ausgaben sortieren nach
Thema durchsuchen
Ansicht
Themen-Optionen

Ausgaben sortieren nach

Ein Thema von steppo · begonnen am 4. Dez 2004 · letzter Beitrag vom 7. Dez 2004
Antwort Antwort
Seite 1 von 2  1 2      
steppo

Registriert seit: 31. Dez 2002
235 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

Ausgaben sortieren nach

  Alt 4. Dez 2004, 20:31
Hi Leute,
habe eine MySQL-Datenbank bei einem Provider in gebrauch.

Dort werden meinerseits Kundendaten gespeichert. Nun möchte ich die Daten nach der Auftragsnummer sortieren lassen.

Ich verwenden folgende Abfrage:
select * from Tabelle where auftragsnummer like'/864/%'; Die Auftragsnummer sieht so aus 'nummer(phpDatum(nicht formatiert))/feste Zahl/AuftragNr'.

Das ganze wird als string in die Datenbank übergeben.

Die Abfrage wird ohne Fehlermeldung ausgeführt, jedoch erhalte ich kein Ergebnis!

Ich verstehe meine Abfrage so.

Zeige mir alle Spalten von Tabelle wo die Auftragsnummer ähnlich 'Backslash 864 Backslash egal'; ist.

Wo ist mein Denkfehler?
Wir sind heute die, vor denen uns unsere Eltern immer gewarnt haben!
  Mit Zitat antworten Zitat
Benutzerbild von Pr0g
Pr0g

Registriert seit: 21. Mai 2004
809 Beiträge
 
Delphi 7 Personal
 
#2

Re: Ausgaben sortieren nach

  Alt 4. Dez 2004, 20:46
Die Abfrage sollte wohl so aussehen:
SELECT * FROM Tabelle WHERE auftragsnummer LIKE '%/864' Denn sonst suchst du nur nach Nummern, die mit "/864" beginnen und einen beliebigen Text am Ende haben, so wie ich es verstanden habe, steht jedoch davor noch ein beliebiger Text.

Um die Ausgabe zu Sortieren, einfach "ORDER BY" hinten anhängen, bspw. so (weiß ja nicht wonach):
SELECT * FROM Tabelle WHERE auftragsnummer LIKE '%/864ORDER BY id; MfG Pr0g
  Mit Zitat antworten Zitat
steppo

Registriert seit: 31. Dez 2002
235 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

Re: Ausgaben sortieren nach

  Alt 5. Dez 2004, 23:26
Hallo Pr0g

danke erst einmal für deine Antwort.

Die Auftragsnummer sieht so aus 'Nummer(phpDatum(nicht formatiert))/feste Zahl/AuftragNr'.

Ich suche nach der Auftragsnummre wobei der erste Teil bis zum ersten Slash, sowie der zweite Teil bis zum zweiten Slash (welcher eine feste Zahl ist) mir egal sind.
Wichtig ist mir der dritte Teil, also nach dem zweiten Slash('AuftragNr').

Dies möchte ich sortiert in aufsteigender Reihenfolge ausgegeben haben.
Wir sind heute die, vor denen uns unsere Eltern immer gewarnt haben!
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#4

Re: Ausgaben sortieren nach

  Alt 5. Dez 2004, 23:34
Hi steppo,

nachdem dir die ersten Teile egal sind, muss das Statement wie bereits erwähnt SELECT * FROM Tabelle WHERE auftragsnummer LIKE '%/864' lauten.

Wenn nun nach der Auftragsnummer sortiert werden soll, dann lautet das Statement so: SELECT * FROM Tabelle WHERE auftragsnummer LIKE '%/864ORDER BY auftragsnummer ASC Falls absteigend sortiert werden soll, musst du statt ASC einfach DESC verwenden.
Ich hoffe ich habe dich richtig verstanden..

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
steppo

Registriert seit: 31. Dez 2002
235 Beiträge
 
Delphi 10 Seattle Enterprise
 
#5

Re: Ausgaben sortieren nach

  Alt 5. Dez 2004, 23:44
Ich habe es mit ORDER BY, sowie ohne ORDER BY versucht. Beides löst keinen Fehler aus, bringt jedoch auch kein Ergebnis.

Ich möchte nach dem letzten drittel sortieren lassen, also nach AuftragNr. Der rest des strings soll nicht beachtet werden.

Daher meine Frage:
Wo liegt mein Fehler?
Wir sind heute die, vor denen uns unsere Eltern immer gewarnt haben!
  Mit Zitat antworten Zitat
Benutzerbild von kiar
kiar

Registriert seit: 2. Aug 2003
Ort: Aschersleben
1.362 Beiträge
 
Delphi 5 Professional
 
#6

Re: Ausgaben sortieren nach

  Alt 5. Dez 2004, 23:55
hallo steppo,

baust du den sqlstring zur laufzeit zusammen, dann solltest du uns mal den quellcode zeigen, wie du das machst.


raik

edit:ich brauche einen neuen rechner, oder besser tastatur
verhältnisse die einem nicht passen,
muss man verändern oder verlassen
  Mit Zitat antworten Zitat
steppo

Registriert seit: 31. Dez 2002
235 Beiträge
 
Delphi 10 Seattle Enterprise
 
#7

Re: Ausgaben sortieren nach

  Alt 6. Dez 2004, 00:31
Ich greife über phpMyAdmin 2.2.3

auf die Datenbank im Web zu und will lediglich die oben genannte Abfrage angezeigt bekommen.
Wir sind heute die, vor denen uns unsere Eltern immer gewarnt haben!
  Mit Zitat antworten Zitat
steirer

Registriert seit: 1. Dez 2004
Ort: Graz
7 Beiträge
 
#8

Re: Ausgaben sortieren nach

  Alt 6. Dez 2004, 08:49
Hallo steppo, wenn ich dich richtig verstanden habe, ist der fixe Teil in der Mitte, der gesuchte Wert am Ende.

ich würde das so abfragen:

select * from Tabelle where auftragsnummer like'%/864/%';
Peter Steger
Die größte EDV-Lüge: "Das haben wir gleich!"
  Mit Zitat antworten Zitat
steppo

Registriert seit: 31. Dez 2002
235 Beiträge
 
Delphi 10 Seattle Enterprise
 
#9

Re: Ausgaben sortieren nach

  Alt 6. Dez 2004, 23:51
o.K. Leute, habe mich wohl nicht richtig ausgedrückt!

Der erste Teil variriert, ist für mich jedoch nicht relevant, also egal.
Der zweite Teil ist fix, immer 864.
Der dritte Teil ist jener der für mich interessant ist und der auch aufsteigend sortiert werden soll.

Das heißt Ihr habt alle mit euren Antworten recht. Die Abfrage sollte so aussehen:

select * from Tabelle where auftragsnummer like'%/864/'; ALso wie oben beschrieben:
Bis zum ersten Slash egal (%),
zweiter Teil = Fix(864)
dritter Teil =gesuchter Teil(AuftragsNr).

Das Problem ist, dass diese Abfrage ausgeführt wird (keine Fehlermeldung von Sql) jedoch kein Ergebnis ausgegeben wird!
Wir sind heute die, vor denen uns unsere Eltern immer gewarnt haben!
  Mit Zitat antworten Zitat
Benutzerbild von jim_raynor
jim_raynor

Registriert seit: 17. Okt 2004
Ort: Berlin
1.251 Beiträge
 
Delphi 5 Standard
 
#10

Re: Ausgaben sortieren nach

  Alt 7. Dez 2004, 07:18
Normalerweise kannst du mit Order By sortieren. Allerdings hast du hier das Problem, dass du in einem Tabellenfeld mehrere Informationen abgespeichert hast. Dies entspricht einem Schlechten Datenbankdesign. Wenn man es richtig machen möchte, müsstest du für jede Information eine eigene Spalte machen (also auch eine wo die Auftragsnr alleine steht).



select * from Tabelle where auftragsnummer like'%/864/' Da fehlt doch noch die Auftragsnummer.

Richtig wäre vermutlich irgendwas wie:

select * from Tabelle where auftragsnummer like '%/864/'+gesuchteAuftragsNr
Christian Reich
Schaut euch mein X-COM Remake X-Force: Fight For Destiny ( http://www.xforce-online.de ) an.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:34 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz