/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
Hent næste i tabel
Fra : Harald


Dato : 12-04-04 09:59

Hej

Jeg bruger MySQL 4.0.17

Jeg har en tabel med bla. følgende felter.

IDKode: int, autoinc
Enhedsnavn : varchar
Ankomst: date

Hvis jeg nu har en aktuel post hvor Enhedsnavn="45" og ankomst="2004-02-06"
så vil jeg gerne lave en SQL der finder den næste post i tabellen hvor
tabellen er sorteret i Enhedsnavn,Ankomst orden.

Tabellen kan f.eks. indeholde følgende poster:

IDkode, Enhedsnavn, Ankomst
23, 42, 2004-01-05
56, 45, 2004-02-06
77, 45, 2004-03-08
37, 50, 2004-02-22

Dvs. at hvis min aktuelle post er linie 2 så skal SQL´en give mig linie 3.
Hvis jeg bare siger:

SELECT * FROM mintabel WHERE Enhedsnavn>"45" LIMIT 1

så springes line 3 jo over og jeg får linie 4 hvilket ikke kan bruges.

Mvh
HK



 
 
Harald (12-04-2004)
Kommentar
Fra : Harald


Dato : 12-04-04 10:06


"Harald" <news10@-REMOVE-THIS-kroning.dk> skrev i en meddelelse
news:407a5a4b$0$462$edfadb0f@dread14.news.tele.dk...
> Hej
>
> Jeg bruger MySQL 4.0.17
>
> Jeg har en tabel med bla. følgende felter.
>
> IDKode: int, autoinc
> Enhedsnavn : varchar
> Ankomst: date
>
> Hvis jeg nu har en aktuel post hvor Enhedsnavn="45" og
ankomst="2004-02-06"
> så vil jeg gerne lave en SQL der finder den næste post i tabellen hvor
> tabellen er sorteret i Enhedsnavn,Ankomst orden.
>
> Tabellen kan f.eks. indeholde følgende poster:
>
> IDkode, Enhedsnavn, Ankomst
> 23, 42, 2004-01-05
> 56, 45, 2004-02-06
> 77, 45, 2004-03-08
> 37, 50, 2004-02-22
>
> Dvs. at hvis min aktuelle post er linie 2 så skal SQL´en give mig linie 3.
> Hvis jeg bare siger:
>
> SELECT * FROM mintabel WHERE Enhedsnavn>"45" LIMIT 1

Jeg mener selfølgelig:
SELECT * FROM mintabel WHERE Enhedsnavn>"45" ORDER BY Enhedsnavn, Ankomst
LIMIT 1

/HK


> så springes line 3 jo over og jeg får linie 4 hvilket ikke kan bruges.
>
> Mvh
> HK
>
>



Kristian Damm Jensen (12-04-2004)
Kommentar
Fra : Kristian Damm Jensen


Dato : 12-04-04 10:30

Harald wrote:
> "Harald" <news10@-REMOVE-THIS-kroning.dk> skrev i en meddelelse
> news:407a5a4b$0$462$edfadb0f@dread14.news.tele.dk...
>> Hej
>>
>> Jeg bruger MySQL 4.0.17
>>
>> Jeg har en tabel med bla. følgende felter.
>>
>> IDKode: int, autoinc
>> Enhedsnavn : varchar
>> Ankomst: date
>>
>> Hvis jeg nu har en aktuel post hvor Enhedsnavn="45" og
>> ankomst="2004-02-06" så vil jeg gerne lave en SQL der finder den
>> næste post i tabellen hvor tabellen er sorteret i Enhedsnavn,Ankomst
>> orden.
>>
>> Tabellen kan f.eks. indeholde følgende poster:
>>
>> IDkode, Enhedsnavn, Ankomst
>> 23, 42, 2004-01-05
>> 56, 45, 2004-02-06
>> 77, 45, 2004-03-08
>> 37, 50, 2004-02-22
>>
>> Dvs. at hvis min aktuelle post er linie 2 så skal SQL´en give mig
>> linie 3. Hvis jeg bare siger:
>>
>> SELECT * FROM mintabel WHERE Enhedsnavn>"45" LIMIT 1
>
> Jeg mener selfølgelig:
> SELECT * FROM mintabel WHERE Enhedsnavn>"45" ORDER BY Enhedsnavn,
> Ankomst LIMIT 1


SELECT *
FROM mintabel
WHERE Enhedsnavn>"45"
OR (Enhedsnavn="45" AND Ankomst > "2004-02-06"
ORDER BY Enhedsnavn, Ankomst
LIMIT 1


--
Kristian Damm Jensen damm (at) ofir (dot) dk
"On the whole he enjoyed the gift of speech, but something told him
that this was the time to employ the even rarer gift of silence." --
Terry Pratchett, The Fifth Elephant


Harald (12-04-2004)
Kommentar
Fra : Harald


Dato : 12-04-04 12:10

"Kristian Damm Jensen" <REdammMOVE@ofir.dk> skrev i en meddelelse
news:c5dnjp$eqsn$1@ID-146708.news.uni-berlin.de...
> Harald wrote:
> > "Harald" <news10@-REMOVE-THIS-kroning.dk> skrev i en meddelelse
> > news:407a5a4b$0$462$edfadb0f@dread14.news.tele.dk...
> >> Hej
> >>
> >> Jeg bruger MySQL 4.0.17
> >>
> >> Jeg har en tabel med bla. følgende felter.
> >>
> >> IDKode: int, autoinc
> >> Enhedsnavn : varchar
> >> Ankomst: date
> >>
> >> Hvis jeg nu har en aktuel post hvor Enhedsnavn="45" og
> >> ankomst="2004-02-06" så vil jeg gerne lave en SQL der finder den
> >> næste post i tabellen hvor tabellen er sorteret i Enhedsnavn,Ankomst
> >> orden.
> >>
> >> Tabellen kan f.eks. indeholde følgende poster:
> >>
> >> IDkode, Enhedsnavn, Ankomst
> >> 23, 42, 2004-01-05
> >> 56, 45, 2004-02-06
> >> 77, 45, 2004-03-08
> >> 37, 50, 2004-02-22
> >>
> >> Dvs. at hvis min aktuelle post er linie 2 så skal SQL´en give mig
> >> linie 3. Hvis jeg bare siger:
> >>
> >> SELECT * FROM mintabel WHERE Enhedsnavn>"45" LIMIT 1
> >
> > Jeg mener selfølgelig:
> > SELECT * FROM mintabel WHERE Enhedsnavn>"45" ORDER BY Enhedsnavn,
> > Ankomst LIMIT 1
>
>
> SELECT *
> FROM mintabel
> WHERE Enhedsnavn>"45"
> OR (Enhedsnavn="45" AND Ankomst > "2004-02-06"
> ORDER BY Enhedsnavn, Ankomst
> LIMIT 1

Ja selfølgelig, tak for det

/HK



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408925
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste