WebWork Magazin - Webseiten erstellen lassen, Online Medien, html

Webhoster, Webhosting Provider und Domain registrieren

Home | Registrieren | Einloggen | Suchen | Aktuelles | GSL-Webservice | Suleitec Webhosting
Reparatur-Forum | Elektro forum | Ersatzteilshop Haushalt und Elektronik



Im Homepage und Webhosting-Forum --- ORDER BY mit Wenn-Bedingung

Scripte und Programme für PHP, MYSQL. Diskussionen zur Programmierung im Web. Fragen zu CMS, Blogsoftware, Shops, Newsletter und vielen weiteren Scripten.

Forum » PHP & MySQL » ORDER BY mit Wenn-Bedingung - 21 Nov 2024 Antworten
im Forum für Webhosting Homepage gefunden:
ORDER BY mit Wenn-Bedingung
chip
Foren-Team
Threadstarter




Beiträge: 419

Hi,

nach langer Zeit mal wieder eine Frage von mir: Gibt es eine Möglichkeit eine ORDER BY-Klausel in MySQL mit einer IF-Bedingung einzugrenzen?
Konkret geht es darum: Ich lese die neuesten Artikel auf meiner Seite aus. Nun sollen sie nach dem Datum des Updates (Timestamp) und dann nach dem Datum der Erstellung sortiert werden. Nun kann das Feld Update aber auch NULL sein und dann wäre die Sortierung falsch. Wie kann ich nun die Abrage gestalten, so dass nur nach Update sortiert wird, wenn das Feld nicht NULL ist?


---

  Profil   Website   Editieren   Zitieren
Korp
Otto-Normal-Poster




Beiträge: 57

du kannst eine if abfrage in eine variable packen und dann ORDER BY $variable machen

---
Interessen am PC:
html, web design, sql und php

  Profil   E-Mail   Website   Editieren   Zitieren
chip
Foren-Team
Threadstarter




Beiträge: 419

Könntest du ein Beispiel geben?

---

  Profil   Website   Editieren   Zitieren
Korp
Otto-Normal-Poster




Beiträge: 57

ok anders
if($update >= 0){
order by time abfrage
}else{
order by update abfrage
}

das statt deiner abfrage mit den jeweiligen neuen abfragen
ist die update 0 sortiert er nach erstellung
ist die update höher als 0 sortiert er nach update

wenn ichs richtig verstanden habe

---
Interessen am PC:
html, web design, sql und php

  Profil   E-Mail   Website   Editieren   Zitieren
subjective
Forenheld




Beiträge: 844

Das wäre aber im PHP - nicht im MySQL.

MySQL kennt eine Funktion IF(). Mit Hilfe dieser Funktion kann main eine Ergebnisspalte zum Sortieren erstellen.

SELECT IF(Bedingung, ja, nein) AS aliasname FROM tabelle ORDER BY aliasname



---
Weaverslave

  Profil   Website   Editieren   Zitieren
chip
Foren-Team
Threadstarter




Beiträge: 419

@subjective: Ja gut, aber das ist nicht das was ich suche. Ich möchte alle Artikel ausgeben. Nich nur die mit und ohne Update. Hier das genaue Problem für evtl. Lösungsansätze: Bei einem neu geschriebenen Artikel ist Update = NULL, also taucht er zuletzt in der Reihe auf und alle Artikel, egal ob sie älter oder neuer sind, mit Update tauchen vor diesem auf. Genau das will ich nicht.

Vielleicht hat ja jemand noch eine zündende Idee.

---

  Profil   Website   Editieren   Zitieren
Korp
Otto-Normal-Poster




Beiträge: 57

also du willst das deine update nicht in die order eingeht?
dann lass die zeit vond er update einfach weg und lass die alte zeit gespeichert

---
Interessen am PC:
html, web design, sql und php

  Profil   E-Mail   Website   Editieren   Zitieren
chip
Foren-Team
Threadstarter




Beiträge: 419

Nee, nicht ganz. Das Update soll schon berücksichtigt werden. Wenn ein Artikel upgedatet wurde soll er an erster Stelle stehen. Aber wenn ein Artikel neu geschrieben wurde dann soll er über diesem stehen.

---

  Profil   Website   Editieren   Zitieren
subjective
Forenheld




Beiträge: 844

Du mußt nur die erste Sortierspalte flexibel erstellen - halt nur wenn "updated" nicht mehr NULL ist wird der Wert daraus verwendet. Sonst nimmst du den Wert aus "created". Als zweites Kriterium kannst du dann nochmal "created" nehmen...

---
Weaverslave

  Profil   Website   Editieren   Zitieren
chip
Foren-Team
Threadstarter




Beiträge: 419

Ja, schon klar. Aber dazu brauche ich ja eine IF-Abfrage. Und die sollte am besten in SQL sein.

---

  Profil   Website   Editieren   Zitieren
 

Antworten
Forum » PHP & MySQL » ORDER BY mit Wenn-Bedingung

Aktuelle Beiträge zur Hilfe im Forum für Homepage - ORDER BY mit Wenn-Bedingung im Forum Homepage Hosting AntwortenLetztes Posting
Cybersicherheit für Unternehmen
in "PHP & MySQL"
3 18.11.2024 14:05 von Gaswer
Wirtschaftslage in der Ukraine
in "PHP & MySQL"
3 22.10.2024 15:04 von Gaswer
Rangliste (Ohne Mysql) (Kompliziertes Ordner System)
in "PHP & MySQL"
3 19.07.2021 06:00 von newtopblog
kleines problem mit phpadmin
in "PHP & MySQL"
5 11.04.2021 22:22 von Zavylon
Counter mit PHP
in "PHP & MySQL"
4 22.03.2021 16:29 von Robeni
Fehlermeldung beim Importieren der Datenbank in phpmyadmin
in "PHP & MySQL"
0 02.08.2019 22:14 von iFuchs
CMS für Online Shop
in "PHP & MySQL"
18 26.05.2019 13:29 von raiserle
Regestrierungproblem
in "PHP & MySQL"
3 28.11.2018 13:20 von norbertofahey
PHP Datum ausgeben?
in "PHP & MySQL"
1 19.10.2018 10:04 von Klaus1973
PHP befehl ausführen
in "PHP & MySQL"
11 16.08.2018 09:08 von Klaus1973
Visual Composer selber programmieren?
in "PHP & MySQL"
0 22.01.2017 23:45 von Redji



Besucher : 8126524    Heute : 442     Gestern : 463     Online : 210     21.11.2024    14:13      0 Besucher in den letzten 60 Sekunden        
Nach oben