SQL = "select * from topics, Answers where ("
SQL = SQL & " topics.skribent like '%%" & ord & "%%'"
SQL = SQL & " OR topics.amne like '%%" & ord & "%%'"
SQL = SQL & " OR topics.inlagg like '%%" & ord & "%%'"
SQL = SQL & " OR Answers.inlagg like '%%" & ord & "%%'"
SQL = SQL & " OR Answers.skribent like '%%" & ord & "%%'"
SQL = SQL & ")"
Set recset = Databas.Execute(SQL)
Om vi skapar ett exempel:
Pelle skriver en rubrik som heter "Roliga spel"
och så svarar Per på "roliga spel"
Då vill jag bara att ett sök resultat ska visas om någon söker efter
"PE" (dvs pers och pelles namn)..... detta ska väll inte vara så svårt :D
OveRRidEMedlem sedan feb. 200112 078 inlägg SQL = "select [b][red]TOP 1[/red][/b] * from topics, Answers where ("
SQL = SQL & " topics.skribent like '%%" & ord & "%%'"
SQL = SQL & " OR topics.amne like '%%" & ord & "%%'"
SQL = SQL & " OR topics.inlagg like '%%" & ord & "%%'"
SQL = SQL & " OR Answers.inlagg like '%%" & ord & "%%'"
SQL = SQL & " OR Answers.skribent like '%%" & ord & "%%'"
SQL = SQL & ")"
Set recset = Databas.Execute(SQL)
kommer inte den då bara markera 1 sök resultat..? vill ju ha fler resultat... fast bara 1 svar om det är i ett speciellt inlägg... som forumet här..
fasen.. den vill inte fungera alls så bra som jag tycker :( den tycks vilja markera alla plus dom som inte ha resultatet ändå...
LarsGMedlem sedan dec. 200012 464 inlägg Hur är topics och answers relaterade?
Du får nog skriva en union, där den ena frågan söker i topics och den andra i answers.
answers har en kolum som heter topic_id som e relaterad till ID i topics
cyprysMedlem sedan dec. 20003 563 inlägg Kanske det heter DISTINCT du är ute efter?
SELECT DISTINCT topic_id FROM ** WHERE osv osv
SQL = "select DISTINCT id,topic_id FROM topics,Answers where("
SQL = SQL & "topics.skribent like '%%" & ord & "%%'"
SQL = SQL & " OR Answers.skribent like '%%" & ord & "%%'"
SQL = SQL & " OR topics.amne like '%%" & ord & "%%'"
SQL = SQL & " OR topics.inlagg like '%%" & ord & "%%'"
SQL = SQL & " OR Answers.inlagg like '%%" & ord & "%%'"
SQL = SQL & ") "
eller?? får fel meddelanden:
Error Type:
ADODB.Recordset (0x800A0CC1)
Item cannot be found in the collection corresponding to the requested name or ordinal.
LarsGMedlem sedan dec. 200012 464 inlägg SQL = "select id FROM topics where("
SQL = SQL & "skribent like '%" & ord & "%'"
SQL = SQL & " OR amne like '%" & ord & "%'"
SQL = SQL & " OR inlagg like '%" & ord & "%'"
SQL = SQL & " OR ID in (select topic_id from answers where "
SQL = SQL & " inlagg like '%" & ord & "%'"
SQL = SQL & " OR skribent like '%" & ord & "%'"
SQL = SQL & "))"
Det beror på vad du vill ha. Jag förstår inte varför du valde både id och topic_id, det är ju samma värde.
har ett litet problem nu.. nu om jag ska kunna välja vilket forum man ska söka i tänkte jag mej:
if not forum1 = "all" then
SQL = "select topic_id,forum_id,amne FROM topics where(forum_id = " & forum1 &" and "
SQL = SQL & " skribent like '%" & ord & "%'"
SQL = SQL & " OR amne like '%" & ord & "%'"
SQL = SQL & " OR inlagg like '%" & ord & "%'"
SQL = SQL & " OR topic_id in (select svar_id from answers where"
SQL = SQL & " inlagg like '%" & ord & "%'"
SQL = SQL & " OR skribent like '%" & ord & "%'"
SQL = SQL & "))"
else
SQL = "select topic_id,forum_id,amne FROM topics where("
SQL = SQL & "skribent like '%" & ord & "%'"
SQL = SQL & " OR amne like '%" & ord & "%'"
SQL = SQL & " OR inlagg like '%" & ord & "%'"
SQL = SQL & " OR topic_id in (select svar_id from answers where "
SQL = SQL & " inlagg like '%" & ord & "%'"
SQL = SQL & " OR skribent like '%" & ord & "%'"
SQL = SQL & "))"
end if
men det är alltid 1 extra inlägg som kommer med i resultatet...
LarsGMedlem sedan dec. 200012 464 inlägg SQL = "select topic_id,forum_id,amne FROM topics where forum_id = " & forum1 &" and ("
SQL = SQL & " skribent like '%" & ord & "%'"
SQL = SQL & " OR amne like '%" & ord & "%'"
SQL = SQL & " OR inlagg like '%" & ord & "%'"
SQL = SQL & " OR topic_id in (select svar_id from answers where"
SQL = SQL & " inlagg like '%" & ord & "%'"
SQL = SQL & " OR skribent like '%" & ord & "%'"
SQL = SQL & "))"
Flyttade på parentesen.