Kom ihåg mig?
Home Menu

Menu


SQL: Offset-problem...

Ämnesverktyg Visningsalternativ
Oläst 2005-10-26, 02:28 #1
Tvartom Tvartom är inte uppkopplad
Medlem
 
Reg.datum: Oct 2004
Inlägg: 86
Tvartom Tvartom är inte uppkopplad
Medlem
 
Reg.datum: Oct 2004
Inlägg: 86
Hej!
Med följande table:

Kod:
nyhet
------------------------------------------
ID (int)
INFO (text)
PRODUKT (enum('ja','nej'))
Har jag en förstasida med nyheter som hämtas med:
Kod:
SELECT * FROM nyhet LIMIT 8,0
Sedan behöver ska jag ha två arkivsidor med produkter/ej produkter skilda
produktsida:
Kod:
SELECT * FROM nyhet WHERE produkt = 'ja'
samt
vanliga nyheter:
Kod:
SELECT * FROM nyhet WHERE produkt = 'nej'
Nu vill jag inte att de nyheterna som finns på första sidan ska finnas på någon av
arkiv-sidorna: Hur löser jag det med SQL-fråga?
Problemmet är att det kan vara allt ifrån 0 till 8 st som är där.

Förslag?



System:
MySQL 4.1.13
Debian
PHP
Tvartom är inte uppkopplad   Svara med citatSvara med citat
Oläst 2005-10-26, 02:42 #2
guran guran är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: Apr 2004
Inlägg: 1 061
guran guran är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: Apr 2004
Inlägg: 1 061
Ett förslag:

Kod:
SELECT *
FROM nyheter
WHERE produkt = 'ja' AND id NOT IN (SELECT id FROM nyhet LIMIT 8,0)
guran är inte uppkopplad   Svara med citatSvara med citat
Oläst 2005-10-28, 14:41 #3
Tvartom Tvartom är inte uppkopplad
Medlem
 
Reg.datum: Oct 2004
Inlägg: 86
Tvartom Tvartom är inte uppkopplad
Medlem
 
Reg.datum: Oct 2004
Inlägg: 86
Citat:
Originally posted by guran@Oct 26 2005, 01:42
Kod:
SELECT *
FROM nyheter
WHERE produkt = 'ja' AND id NOT IN (SELECT id FROM nyhet LIMIT 8,0)
Ahh... trodde jag var räddad men:

Kod:
#1235 - This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'
Någon föslag hur man kommer runt det?
Tvartom är inte uppkopplad   Svara med citatSvara med citat
Oläst 2005-10-28, 14:56 #4
guran guran är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: Apr 2004
Inlägg: 1 061
guran guran är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: Apr 2004
Inlägg: 1 061
Ett förslag till:

Kod:
CREATE TEMPORARY TABLE temp_nyheter REPLACE
SELECT id FROM nyheter LIMIT 8,0

SELECT *
FROM nyheter
WHERE produkt = 'ja' AND id NOT IN (SELECT id FROM temp_nyheter)
guran är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 04:51.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017