Jag undrar om detta är möjligt utan att dela upp tabellen i 2 tabeller. Denna sql-fråga bör ge dig det du vill ha, förutom att du får 1:an två ggr. Det får du eftersom den finns två ggr i tabellen, en med ID=1 och en med svarsid=1. Tackar men det funkar inte. Access vet jag inte mycket om, men i SQL 7 fungerar det bra. Har du kopierat exakt det jag skrev och bytt ut tabellnamnet? Fungerar inte det? Naturligtvis förutsatt att dina kolumner heter så som jag angivit dem... Annars går det ju naturligtvis med en union: Var en skumdatastruktur. Det är en schematisk skiss på ett forum som jag byggde ihop i somras och som jag idag kör på www.EnduroMX.com. Det är mellan 25 - 100 inlägg per dag och det börjar bli väldigt svårt att överblicka. Jag kopierade in fel Select sats detta är den jag menade:Måste jag dela upp tabellen eller klara jag det med en SQL fråga.
Det måste bli ett korrekt svar och inte ett svar som skall filteras i RecordSet för då uppstår problem med siduppdelningen.
Jag vill söka tag på alla A:en som finns och vill ha tillbaks ID nummer på de som har namn Allmän men de som inte har namn allmän vill jag ha ID = SVARSID och inte ID.
Databasen är Access 2000 eller MS SQL 7
Tabellen: forum
ID Namn Info SvarsID
----------------------------
1 Allmän A
2 A 1
3 Allmän B
4 Allmän C
5 A 4
6 Allmän A
7 B 6
8 Allmän C
SvarsID referera till ID
Önskat svar:
ID
---
1
4
6
Jag har försökt lösa det med en SQL fråga i minst 48 timmar och undrar om det finns någon som har ngt tips.
Hälsningar
UrbanSv: Måste jag dela upp tabellen eller klara jag det med en SQL fråga.
SELECT
CASE Namn
WHEN 'Allmän' THEN Id
ELSE SvarsId
END AS [Id]
FROM Tabellnamn
WHERE Info = 'A'Sv: Måste jag dela upp tabellen eller klara jag det med en SQL fråga.
Jag får inte CASE att fungera i SQL-frågan. Stöds det verkligen i MS SQL 7.0 eller Access 2000.
På svenska skulle man vilja fråga: (Hämta alla ID med Info "A" där Namn = "Allmän") samt (alla SvarsID med info "A" där Namn = "" som ID) och returnera svaret som unika ID.
Om det går att lösa som en SQL-fråga mot Access eller SQL 7.0 börjar jag nu tveka på...
/UrbanSv: Måste jag dela upp tabellen eller klara jag det med en SQL fråga.
Sv: Måste jag dela upp tabellen eller klara jag det med en SQL fråga.
SELECT Id
FROM tabell
WHERE Info = 'A'
AND Namn = 'Allmän'
UNION
SELECT SvarsId AS [Id]
FROM tabell
WHERE Info = 'A'
AND Allmän = ''Sv: Måste jag dela upp tabellen eller klara jag det med en SQL fråga.
Kan du färklara hur du tänkt. Och vad den gör?Sv: Måste jag dela upp tabellen eller klara jag det med en SQL fråga.
Jag byggde forumet utifrån IDG ASP WebStudio och spann vidare på det. Det har funkat mycket bra förutom nu när jag skall lägga på en sökfunktion som ger en del huvudbry.
Jag skulle vilja söka på en söksträng tex %förgasare% då skall den gå igenom både Inlägg och svaren eftersom det kan förekomma i både "inlägg + svar", "inlägg" bara och "svar" bara. Jag vill få tillbaks alla ID nummer från alla diskussioner där sökströngen finns någonstans.
Det körs på Ballou i en Access 2000 Databas men jag har möjlighet att test köra lokalt med både Access och SQL 7. Har även möjlighet att uppgradera till SQL 7 när det behövs.
Tabellen innehåller över 3000 poster just nu.
Det senaste jag vart inne på är att skriva ID i SvarsID fältet på de med Forumnamn "Allmän" vilka är de som är inlägg(Första). Jag har då med en test tabell lyckats få fram rätt id nummer.
Så här ser den ut:
Show = ("SELECT * FROM forum WHERE Forumnamn = '" & Forum & "' AND ID IN (SELECT ID FROM forum WHERE INLAGG LIKE '%"& strSearch &"%' OR RUBRIK LIKE '%"& strSearch &"%') ORDER BY RUBRIK DESC").
Distinct ger unika värden men lägger jag på övriga kolumner så funkar inte Distinct som jag hade tänkt mig.
Jag har provat som Christoffer visade men jag får det tyvärr inte att funka (Med mina namn).
Mycket, mycket tacksam om ngn kan komma med ngt tips!
/UrbanSv: Måste jag dela upp tabellen eller klara jag det med en SQL fråga.
Show = ("SELECT DISTINCT SvarsID FROM forum WHERE INLAGG LIKE '%"& strSearch &"%' OR RUBRIK LIKE '%"& strSearch &"%' ")
/Urban