AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

SQL Oder BY Problem

Ein Thema von Jens Schumann · begonnen am 10. Feb 2007 · letzter Beitrag vom 11. Feb 2007
Antwort Antwort
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#1

SQL Oder BY Problem

  Alt 10. Feb 2007, 18:07
Datenbank: Firebird • Version: 1.5.2.4731 • Zugriff über: IBX
Hallo,
ich hole aus einer Tabelle mit folgendem SQL 3 Datensätze.SELECT id,picture FROM pictures WHERE (id=52) OR (id=18) OR (id=36) id wird über einen Generator erzeugt ist der Primary Key der Tabelle. Deshalb kommen die Datensätze in der Reihenfolge
18
36
52
Jetzt möchte ich jedoch eine Reihenfolge vorgeben. Zum Beispiel
52
18
36

Hat Da jemand eine Idee?
I come from outer space to save the human race
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: SQL Oder BY Problem

  Alt 10. Feb 2007, 18:09
Ich sehe dein Problem nicht:
SELECT id,picture FROM pictures WHERE (id=52) OR (id=18) OR (id=36) order by id
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#3

Re: SQL Oder BY Problem

  Alt 10. Feb 2007, 18:11
Hallo,
das Problem ist, das id der Primary Key und und mit einem Generator erzeugt wurde. Wenn ich nach id sortiere werden die Datensätze in der Reihenfolge ausgegeben in der sie in die Datenbank geschrieben wurden.
Ich möchte jedoch eine beliebige Reihenfolge vorgeben.
I come from outer space to save the human race
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: SQL Oder BY Problem

  Alt 10. Feb 2007, 18:14
Und wie soll die Reihenfolge aussehen? (Logik)
Markus Kinzler
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: SQL Oder BY Problem

  Alt 10. Feb 2007, 18:14
Vielleicht so...

SQL-Code:
SELECT 1 typ, id, picture
FROM pictures
WHERE id = 52

UNION

SELECT 2 typ, id, picture
FROM pictures
WHERE id = 18

UNION

SELECT 3 typ, id, picture
FROM pictures
WHERE id = 36

ORDER BY typ
Gruss
Thorsten
  Mit Zitat antworten Zitat
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#6

Re: SQL Oder BY Problem

  Alt 10. Feb 2007, 18:20
Hallo omata,
cool - ohne ORDER BY scheint es zu funktionieren.
I come from outer space to save the human race
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: SQL Oder BY Problem

  Alt 10. Feb 2007, 18:46
Mit ORDER BY kommt eine Fehlermeldung?

Versuch es mal so...
SQL-Code:
SELECT *
FROM (SELECT 1 AS typ, id, picture
      FROM pictures
      WHERE id = 52

      UNION

      SELECT 2 AS typ, id, picture
      FROM pictures
      WHERE id = 18

      UNION
 
      SELECT 3 AS typ, id, picture
      FROM pictures
      WHERE id = 36) x
ORDER BY typ
Es ist sicherer wenn das ORDER BY auch vorhanden ist.

Gruss
Thorsten
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.336 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: SQL Oder BY Problem

  Alt 11. Feb 2007, 09:49
Was spricht dagegen, noch ein Feld "Position" einzuführen?
Dann braucht man die Ausgabereihenfolge nicht im Quelltext festlegen...

Stahli
  Mit Zitat antworten Zitat
Antwort Antwort


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 12:59 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