K++Medlem sedan juli 2002171 inlägg Har funderat och funderat på hur man ska lösa detta i sql. Om det nu går, det jag vill ha i varje fall är en sql-sats som väljer ut fält där jag bara vill ha ett fält där det baseras på det senaste värdet.
Jag visar hur tabellen ser ut:
+-----------------+
| Titel | Ordning |
+-----------------+
| etttt | 1234567 |
| etttt | 2345678 |
| tvaa | 1234567 |
| tvaa | 2345678 |
+------------------+
Av sql satsen vill jag enbart ha ut
ettt 2345678 & tvaa 2345678 dvs de som har högst ordningsnummer. Och inte duplikaten av ettt. Går detta att lösa med sql?
LarsGMedlem sedan dec. 200012 464 inlägg select titel,max(ordning)
from t
group by titel
K++Medlem sedan juli 2002171 inlägg Det verkar som att GROUP BY titel strular till det, då allt jag söker efter tas bort och de andra stannar kvar... Kanske beror på att de tidigare ligger innan i tabellen? eller?
LarsGMedlem sedan dec. 200012 464 inlägg På vilket sätt blir det fel resultat?
Exemplifiera.
K++Medlem sedan juli 2002171 inlägg Problemet är att den enbart tar ut värdet av max som max, jag har två kolumner för bilder och om man kör max på de händer inget.
dvs SELECT titel,max(ordning),bild1,bild2 Group by titel
Ger titel ej max, fält2 max, bild1 ej max, bild2 ej max, förstår du?
LarsGMedlem sedan dec. 200012 464 inlägg En fråga som ser ut på det sättet går inte att utföra på ett förutsägbart sätt. Därför så förbjuder alla DBMS utom Mysql sådana frågor.
Det du får är godtyckliga värden för bild1 och bild2 och dessa har ingen koppling till den post som innehåller max(ordning). Du behöver inte ens få samma värden för bild1 och bild2 vid olika tillfällen.
select t1.title,t1.bild1,t1.bild1,t1.ordning
from t t1 join t t2 on t1.title = t2.title
group by t1.title,t1.bild1,t1.bild1,t1.ordning
having t1.ordning = max(t2.ordning)
K++Medlem sedan juli 2002171 inlägg :stud Det förklarar varför jag inte lyckades komma på ngn lösning.. hm.. Måste man inte gruppera titlarna på ngt sätt? :q
K++Medlem sedan juli 2002171 inlägg Eller rättare sagt behöver jag inte två tabeller för att göra en join?
K++Medlem sedan juli 2002171 inlägg Eftersom nu displayar den bara allt.. dvs
K++Medlem sedan juli 2002171 inlägg Eller hm.. t1 och t2 är inga referenser till tabeller som finns? :?
Edit: klart dom är hm..
K++Medlem sedan juli 2002171 inlägg Nu är det löst, råkade skriva lite fel.. :blush:
Men tack så mkt, det där har besparat en del hårstrån och en del cola! Trevligt att det finns sådana som du som är villiga att hjälpa!