bert: Sortierung

Beitrag lesen

Hallo zusammen,

möchte eine Tabelle "Artikel" nach folgenden Kriterien sortieren:

  • es sollen zu erst alle Artikel angezeigt werden die einen Preis größer Null "0" und ungleich "null" sind, dh. in der Spalte "Preis" ist ein intiger Wert größer Null "0" und ungleich "null" ist.
  • alle Artikel, deren Wert in der Spalte "Preis" eine Null "0" oder "null" ist sollen danach angezeigt werden.

Die Tabelle " Artikel " sieht folgender Massen aus:

id,  name,  preis, status
_________________________________________

1 Name1  12  1
2 --  2  1
3 ...  0  1
4 Text1  null  1
5 Text2  5  1
6 Text3  11  1
7 Name2  0  1
8 Name3  null  1
9 Art1  3  1
10 Art4  43  2

Dazu habe ich folgenden Versuch gemacht:

  
SELECT Artikel.id, Artikel.preis FROM Artikel WHERE Artikel.status = 1  
IN  
(SELECT Artikel.id FROM Artikel WHERE  Artikel.preis IS not null order by Artikel.preis asc ) order by Artikel.preis desc  

In dieser Query warden alle Preise von dem größtem bis zum kleinstem dann 0 und danach null angezeigt, was auch falsch ist :-(

Die Query kann ich in eine andere Form umgestalten, die mir leider auch nicht weiter hilft :-(

  
SELECT Artikel.id, Artikel.preis FROM Artikel WHERE Artikel.status = 1  
And Artikel.preis IS not null order by Artikel.preis desc  

Hat jemand ein Idee wie man das lösen kann?

Grüße bert