Autor | Zpráva | ||
---|---|---|---|
Gogo_v Profil * |
#1 · Zasláno: 21. 11. 2011, 18:34:38
Dobrý den. Potřebuji poradit (zase) Mám dvě tabulky s několika poli kde v jedné tabulce je index na druhou tabulku
SE.id , SE.date_ins,SE.telefon FROM service SE a SP.pid,SP.datum,SP.text FROM spoznamka SP SELECT SE.* FROM service SE, (SELECT datum FROM spoznamka where pid = SE.id order by datum DESC limit 1) as pdate ORDER BY pdate , SE.date_ins DESC 20 777111222 2011-11-21 08:00:03 Poznámka 20 2011-11-21 11:50:13 Nejaky text 20 2011-11-21 12:08:20 Další poznámka 21 731000111 2011-11-20 15:06:18 Poznámka 21 2011-11-21 11:35:28 Navrhnul jsem řešení 22 608111222 2011-11-20 15:06:18 Poznámka 22 2011-11-21 10:55:13 Přetrvávající problém 23 605333333 2011-11-20 11:24:43 24 605444555 2011-11-19 19:13:06 Poznámka 24 2011-11-21 10:34:07 S problémem seznámení 25 777141414 2011-11-19 18:34:07 Poznámka 25 2011-11-19 18:36:03 Děkuji 25 2011-11-21 09:07:23 Upravit 25 2011-11-21 12:14:29 Nastavení SQL Výsledek setřídění by měl být 25,20,21,22,24 protože ve 25 je nejčerstvější záznam. Doufám že jsem to popsal nějak srozumitelně :) Děkuji za pomoc |
||
Kajman_ Profil * |
#2 · Zasláno: 21. 11. 2011, 18:44:48
Nepatří ten subselect pojmenový pdate před from?
|
||
Gogo_v Profil * |
#3 · Zasláno: 21. 11. 2011, 18:50:48
Kajman:
Samozřejmě patří , jsem se v tom nějak zamotal při přepisování kuchal jsem to podstatné z mnohem složitějšího SELECTu :) SELECT SE.*,(SELECT datum FROM spoznamka where pid = SE.id order by datum DESC limit 1) as pdate FROM service SE ORDER BY pdate , SE.date_ins DESC |
||
Kajman_ Profil * |
#4 · Zasláno: 21. 11. 2011, 20:10:14
Za pdate Vám chybí DESC. Ale aby tam byla ta 23 uprostřed, můžete zkusit
ORDER BY ifnull(pdate,SE.date_ins) DESC |
||
Gogo_v Profil * |
#5 · Zasláno: 21. 11. 2011, 20:26:17
Kajman:
Skvělé to je přesně ono. Děkuji moc. |
||
Časová prodleva: 12 let
|
0