Hallo,
ich möchte eine Abfrage erzeugen, die an jedem Tage eine andere Sortierung erzeugt, meine Idee dazu - ich benutze eine SPLIT_STR Funktion (siehe weiter unten) um den Spaltennamen festzulegen.
SELECT *
FROM meine_tabelle
ORDER BY SPLIT_STR(
"dd|tdstamp|csrdate|rdc_email|rdc_preis|rfc_plz|rf c_username|rfc_password", '|', dayofweek( now( ) )
) ASC
Leider erfolgt keine Sortierung, es gibt aber auch keine Fehlermeldung :-(
Die Split_str Funktion an sich tut, ein
select SPLIT_STR(
"dd|tdstamp|csrdate|rdc_email|rdc_preis|rfc_plz|rf c_username|rfc_password", '|', dayofweek( now( ) )
) gibt eine richtige Antwort
Hat jemand eine Idee bzw. einen anderen Lösungsansatz??
==Funktion==
CREATE FUNCTION SPLIT_STR(
x VARCHAR(255),
delim VARCHAR(12),
pos INT
)
RETURNS VARCHAR(255)
RETURN REPLACE(SUBSTRING(SUBSTRING_INDEX(x, delim, pos),
LENGTH(SUBSTRING_INDEX(x, delim, pos -1)) + 1),
delim, '')
ich möchte eine Abfrage erzeugen, die an jedem Tage eine andere Sortierung erzeugt, meine Idee dazu - ich benutze eine SPLIT_STR Funktion (siehe weiter unten) um den Spaltennamen festzulegen.
SELECT *
FROM meine_tabelle
ORDER BY SPLIT_STR(
"dd|tdstamp|csrdate|rdc_email|rdc_preis|rfc_plz|rf c_username|rfc_password", '|', dayofweek( now( ) )
) ASC
Leider erfolgt keine Sortierung, es gibt aber auch keine Fehlermeldung :-(
Die Split_str Funktion an sich tut, ein
select SPLIT_STR(
"dd|tdstamp|csrdate|rdc_email|rdc_preis|rfc_plz|rf c_username|rfc_password", '|', dayofweek( now( ) )
) gibt eine richtige Antwort
Hat jemand eine Idee bzw. einen anderen Lösungsansatz??
==Funktion==
CREATE FUNCTION SPLIT_STR(
x VARCHAR(255),
delim VARCHAR(12),
pos INT
)
RETURNS VARCHAR(255)
RETURN REPLACE(SUBSTRING(SUBSTRING_INDEX(x, delim, pos),
LENGTH(SUBSTRING_INDEX(x, delim, pos -1)) + 1),
delim, '')
Comment