Autor Zpráva
visionic
Profil *
Ahoj mám dvě tabulky, kde u mysql dotazu selectuju a druhou selectuju LEFT JOINem.

Jedna tabulka má sloupec cena a druhá má cenu. Vypisuju cenu pouze z první, ale pokud je NULL, tak se veme z druhé. Ale ORDERovat umím pouze z jedné.
Jak docílit abych tyto dva sloupce ze dvou tabulek seřadit ASC?

Tabulka 1
id/nazev/cena/idfiltru
1/jmeno/200/1
2/jmeno/1000/1

Tabulka 2
id/popis/cena
1/text/500

Nyní se to řadí takto, protože řadím tabulka 1 cena ASC, tabulka 2 cena ASC
200
1000
500

Jak tedy docílit, aby se při selectu se5adily oba sloupce dohromady. Něco jako -> (tabulka1.cena & tabulka2.cena) ASC
Alphard
Profil
dev.mysql.com/doc/refman/5.7/en/comparison-operators.html#function_coalesce
visionic
Profil *
Alphard:
Ahoj, buď se neumím pořádně vyjádřit nebo si mě moc nepochopil. Nejde mi o to selectnout cenu, ale řadit. Nikdy nebudou vyplněný obě ceny v tabulce.

Nebo pak je tu třetí možnost, že jsem úplně blbej :D
Kajman
Profil
V mysql lze řadit i podle výrazu
SELECT ... ORDER BY Coalesce(tabulka1.cena, tabulka2.cena) ASC

V některých databázích je potřeba uvést výraz, podle kterého chcete řadit, i v select části.
visionic
Profil *
Kajman:
Aha, tak ted jste mi vlastne potvrdil, ze jsem hloupy. Ja v tom videl pouze selektaci. Moc diky.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0