webForumDet fria alternativet
Logga in / Bli medlem

Extrahera senast registrerade post

Databaser & SQL

6 svar · 314 visningar · startad av lillebror

Medlem sedan apr. 20041 597 inlägg
Trådstart#1

Finns det någon som ser felet som jag inte lyckats se efter mycket testande. I mitt tycke skiljer sig inte denna sats speciellt mycket från de andra SQL-satser jag skrivit. Har dock gått bet på denna!

SqlListLastPost = "SELECT Subject, Author FROM t_threads WHERE ANSWERID <> 0 ORDER BY ID DESC LIMIT 1"

När jag öppnar sidan får jag följande felkod...

**Microsoft JET Database Engine error '80040e14'
Syntax error in ORDER BY clause.

/forum.asp, line 83**

Någon idé?

Medlem sedan mars 20023 561 inlägg
#2

DBMS?

Medlem sedan mars 20034 471 inlägg
#3

Re: Extrahera senast registrerade post

lillebror skrev:

...
SqlListLastPost = "SELECT Subject, Author FROM t_threads
WHERE ANSWERID <> 0 ORDER BY ID DESC LIMIT 1"

När jag öppnar sidan får jag följande felkod...

**Microsoft JET Database Engine error '80040e14'
Syntax error in ORDER BY clause.

/forum.asp, line 83**

Någon idé?

Ja. Du kan inte ordna ditt svar efter en kolumn du inte plockar ut. Om du vill ordna efter ID, så måste den finnas med i SELECT-delen. Alltså:

SELECT Subject, Author, ID
FROM t_threads
WHERE ANSWERID <> 0
ORDER BY ID DESC LIMIT 1

Medlem sedan dec. 200012 464 inlägg
#4

limit finns inte i Access. Dessutom så skall du inte använda den metoden överhuvudtaget. Använd

select @@identity

Ja. Du kan inte ordna ditt svar efter en kolumn du inte plockar ut.

Jo.

Medlem sedan apr. 20041 597 inlägg
#5

Hur skulle den nya SQL-satsen se ut med select @@identity? Det jag vill åstadkomma är att plocka ut det sist inskrivna inlägget i databasen antingen med hjälp av datumet eller id-kolumnen.

Medlem sedan dec. 200012 464 inlägg
#6

Jag kanske missförstod frågan lite. Jag troidde att du hade en räknare och ville få reda på dess värde efter en insert.

Om du vill ha tag i posten med högst datum så får du använda frågan

select top 1 * from tabell order by datum desc
Medlem sedan apr. 20041 597 inlägg
#7

Denna SQL-sats (Access) löste mitt problem...

SqlListLastPost = "SELECT top 1 * FROM t_threads WHERE ANSWERID = 0 ORDER BY ID DESC"

:)

266 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
135 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)