webForumDet fria alternativet

SELECT TOP som inte fungerar i Access

9 svar · 769 visningar · startad av tlee

tleeMedlem sedan mars 2001293 inlägg
#1
SELECT TOP 17 * FROM tblProductArticles where id not in(select top 0 id from tblProductArticles order by fldArticleGroup, fldArticleName) order by fldArticleGroup, fldArticlePosition;

Koden fungerar i MSSQL men inte i Access, kan man skriva om den så den fungerar även i MS Access2000?

tack

/t

@ndersMedlem sedan juni 200026 914 inlägg
#2

På vilket sätt fungerar det inte då?
Och vilket syfte har din subquery?

tleeMedlem sedan mars 2001293 inlägg
#3
where id not in(select top 1 id from tblProductArticles order by fldArticleGroup, fldArticleName) order by

om jag byter ut 0 mot 1 så fungerar det men han visar inte den första posten utan börjar på den andra istället.

tleeMedlem sedan mars 2001293 inlägg
#4

får följande fel:

syntaxfel i uttrycket 'id not in(select top 0 id from tblProductArticles order by fldArticleGroup, fldArticleName)

lägensen jag grejade med det här men det är någon pageing historia..

om jag bläddrar fram i mina poster blir nästa sqlquery:

SELECT TOP 17 * FROM tblProductArticles where id not in(select top 17 id from tblProductArticles order by fldArticleGroup, fldArticleName) order by fldArticleGroup, fldArticlePosition;

nästa blir

SELECT TOP 17 * FROM tblProductArticles where id not in(select top 34 id from tblProductArticles order by fldArticleGroup, fldArticleName) order by fldArticleGroup, fldArticlePosition;

0-17
17-34
34-osv

nitro2k01Medlem sedan aug. 20037 630 inlägg
#5
SELECT * 
  FROM tblProductArticles 
  ORDER BY fldArticleGroup, fldArticlePosition
  LIMIT 0,17;

Byt ut 0,17 till 18,34 osv.

@ndersMedlem sedan juni 200026 914 inlägg
#6

nitro, det är access. Limit fungerar inte i access.

Lösningen är: Ta bort din subquery när du ska visa första sidan i din paging.

tleeMedlem sedan mars 2001293 inlägg
#7

löste det såhär

SELECT TOP 17 * FROM tblProductArticles where id not in(select id from tblProductArticles where 1=0 order by fldArticleGroup, fldArticleName) order by fldArticleGroup, fldArticlePosition;

edit: ändrade till anders förslag... fungerade lika bra det.

@ndersMedlem sedan juni 200026 914 inlägg
#8

Borde det inte vara smartare att ta bort villkoret helt?

tleeMedlem sedan mars 2001293 inlägg
#9

jorå visst är det så!

@ndersMedlem sedan juni 200026 914 inlägg
#10

Ok - men välj gärna ett vettigt inlägg att acceptera som slutgiltigt svar. :)

124 ms totalt · 3 externa anrop · cache AV · v20260731051352-full.56cc9887
0 ms — hämta statistik (cache)
0 ms — hämta forumlista (cache)
122 ms — hämta tråd, inlägg och bilagor (db)