Gå til innhold

Order og "ten latest"


Anbefalte innlegg

Hei,

 

Har et par spørsmål angående mysql/php. Akkurat nå kjører jeg en "order by Title" på databasen, men jeg lurer på om det er mulig å vise kun enkeltbokstaver, eller flere enkeltbokstaver. For eksempel å vise titler ordnet etter a-f, f-k, og lignende?

 

Også lurer jeg på om det går an å vise de 10 siste innleggene fra en database som har en primærnøkkel med auto_increment?

Lenke til kommentar
Videoannonse
Annonse

Nummer to ser ut til å være det jeg letet etter. Men når det gjelder nummer en er jeg litt forvirret angående syntaksen. "(kolonne,1,1)" - hva innebærer det utrykket? I spørsmål nummer en er jeg spesielt interessert i hvordan man kan vise flere ting som begynner på flere bokstaver (fra samme rad), f.eks a, b, c, d på en side.

Endret av Radar911
Lenke til kommentar

La inn noen test-titler i databasen:

 

ID----Title

6------Alien Vs Predator

7------All The President's Men

8------Copycat

9------Nixon

10---- Resident Evil: Apocalypse

11---- Shaun of the Dead

12---- Terminator 3

13---- The Italian Job

14---- The Mission

15---- Young Frankenstein

16---- Zatoichi

17---- 2 Fast 2 Furious

18---- Infernal Affairs

 

Og da fikk jeg følgende resultat på websiden:

2 Fast 2 Furious

Alien Vs Predator

All The President's Men

Copycat

Infernal Affairs

Nixon

Resident Evil: Apocalypse

Shaun of the Dead

Terminator 3

The Green Mile

 

Vet ikke helt hvordan SQL tenker her, men jeg vil ha titlene til de 10 høyeste ID'en visst (altså alle ID'ene fra 9 og oppover i dette eksemplet, ID'ene vil såklart variere ettersom nye verdier blir lagt til).

Lenke til kommentar
Vet ikke helt hvordan SQL tenker her, men jeg vil ha titlene til de 10 høyeste ID'en visst (altså alle ID'ene fra 9 og oppover i dette eksemplet, ID'ene vil såklart variere ettersom nye verdier blir lagt til).

Nå har ikke jeg peiling på SQL, men listen ser ut til å være alfabetisk ordnet.

 

Gjetter på at du må sortere etter kolonne "ID" og ikke etter kolonne "Title" ettersom "Title" neppe inneholder info om alder/tidspunkt/rekkefølge for innleggingen

Lenke til kommentar

Jeg er ikke helt stø i mysql-spørringer, men så vidt jeg vet går det an med AND/OR... Det må vel være mulig å bruke det. Så du kan hente ut rader der en viss kolonne begynner på a, eller der kolonnen begynner på b, eller der kolonnen begynner på c og så videre... Det bør vel være mulig ;)

Lenke til kommentar
Hva er semantikken bak dette utrykket, SELECT * FROM tabell WHERE SUBSTRING(kolonne,1,1) = "a" - og kan man bruke det til å velge titler som begynner på flere bokstaver enn bare en?

Betyr ganske enkelt at alle rader hvor bokstaven "a" finnes i stringen mellom bokstav 1 og 1 skal skrives ut.

Jeg har aldri brukt det selv, men logikken tilsier at det er betydningen. Om du da vil ha alt som begynner på "ab", så skriver du:

SUBSTRING(kolonne,1,2) = "ab"

istedet...

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...