webForumDet fria alternativet

AND i SQL-sträng förutom den sista....

ASP

8 svar · 251 visningar · startad av JAreMANNEN

Medlem sedan aug. 20002 272 inlägg
Frågan#1

Begrunda följande....

Har gjort en sökfunktion som ska söka igenom vissa databaskolumner...

Som det är just nu så kan jag fylla i ett utav formulärfälten på söksidan, fyller jag i båda så får jag förstås ett felmeddelande som talar om att det finns AND efter den sista variabeln i SQL-strängen (" & strCompany & ")

Visar koden nedan:

Dim strSearch, strCompany

strSearch = Request.Form("sokord")
strCompany = Request.Form("company")

If NOT strSearch = "" Then
strSearch = Replace("strSearch", "strSearch", "keyword LIKE '%" & strSearch & "%' AND ")
End If

If NOT strCompany = "" Then
strCompany = Replace("strCompany", "strCompany", "company LIKE '%" & strCompany & "%' AND ")
End If

strSQL = "SELECT * FROM Foretag WHERE " & strSearch & " " & strCompany & " "

Mitt problem är att jag inte vet HUR man ska "plocka" bort det sista AND..

Jag kan inte ta bort det i Replace-strängen eftersom jag kommer att lägga till fler sökfält sedan, och då kan ju de komma i vilken ordning som helst beroende på vilka fält som fylls i..

Hoppas att jag postade på rätt ställe nu... :)

------------------
Det är lättare att leva ett rikt liv som ung, när man vet att det väntar ett som gammal
E-post

[Redigerat av JAreMANNEN den 31 jan 2001]

Medlem sedan juni 200032 967 inlägg
#2

strCompany = left (strCompany, len(strCompany)-4)

mvh,

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

Medlem sedan juni 200032 967 inlägg
#3

eller med strSQL då, antar jag.

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

Medlem sedan aug. 20002 272 inlägg
#4

Som sagt:

Jag kan inte ta bort det i Replace-strängen eftersom jag kommer att lägga till fler sökfält sedan, och då kan ju de komma i vilken ordning som helst beroende på vilka fält som fylls i..

Du kanske hade tänkt på det..men jag tycker att den koden du skrev ser ut att BARA ta bort 4 tecken från slutet påstrCompany..ELLER?

Om jag lägger till tex stad som sökmöjlighet oxå då blir det juh knas....

Eller är jag ute på djupt vatten nu kanske..? :)

------------------
Det är lättare att leva ett rikt liv som ung, när man vet att det väntar ett som gammal
E-post

Medlem sedan juni 200032 967 inlägg
#5

jo, men jag ångrade mig ju och sa att du skulle köra på strSQL istället.

det är väl så att enligt din kod kommer alltid strSQL att sluta på "AND ".

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

Medlem sedan aug. 20002 272 inlägg
#6

Aha.....

Tröga mig.. :)

Tack!

------------------
Det är lättare att leva ett rikt liv som ung, när man vet att det väntar ett som gammal
E-post

Medlem sedan juni 200032 967 inlägg
#7

'sego! :)

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

Medlem sedan aug. 20002 272 inlägg
#8

Funkar KALAS nu...bara en lite fråga till :)

Kan man lägga i Count(tabell) AS variabel i den SQL-strängen jag använder??

strSQL = "SELECT * FROM Foretag WHERE " & strSearch & " " & strCompany & " "

Eller hur ska jag räkna antalet sökträffar???

------------------
Det är lättare att leva ett rikt liv som ung, när man vet att det väntar ett som gammal
E-post

Medlem sedan juni 200032 967 inlägg
#9

i det här fallet hade jag antingen gjort två sql-frågor eller använt recordset-objektets recordcount. det finns massor av trådar här på wf om just hur man räknar sökträffar. :)

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

261 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
136 ms — hämta tråd, inlägg och bilagor (db)
118 ms — ändringar (db)