---
title: "SQL - fråga"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/10716-sql-fråga"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "jimpa"
published: "2001-07-19T11:13:00.000Z"
updated: "2001-07-22T12:59:00.000Z"
replies: 11
views: 208
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/10716-sql-fråga"
---

# SQL - fråga

## #1 — jimpa, 2001-07-19T11:13Z

Hej, 

Jag har ett formulär med 3 stycken olika dropdown menyer. 

Jag tänkte att SQL frågan kunde se ut så här nånting..

```

SQL = "SELECT * FROM annons WHERE lage = '"&lage&"' AND bkat = '"&bkat&"' AND kat = '"&kat&"' ORDER By "& Request.Form("sortera")"
```

Men om man i dropdown menyerna har valt att visa (ALLT) i resp. tabel hur blir det då?

Någon If sats kanske

If Requestform("lage") = "ALLT" Then

lage = Allt i Record Setet

Eller är jag helt fel, någon som har något förslag?

Mvh Jimpa

Permalänk: https://www.webforum.nu/p/10716

## #2 — Eclipse, 2001-07-19T11:49Z

```
IF request("allt") = "allt" THEN
-- SQL = ...
ELSE
-- SQL = ...
END IF
```

Permalänk: https://www.webforum.nu/p/278305

## #3 — jimpa, 2001-07-19T12:30Z

Hmm,

Men jag har ju 3 stycken dropdown menyer.
Skulle det inte gå på något vis att tabort värdet från SQL-frågan där man i en dropdown menyn har valt att vissa allt? Eller måste man skriva en ny SQL-fråga för varje alternativ man väljer i formuläret?
Jag menar det kan ju bli ganska många olika kombinationer.

Mvh..

Permalänk: https://www.webforum.nu/p/278306

## #4 — LarsG, 2001-07-19T12:40Z

Du kan ju bygga upp SQL-satsen efter hand

```
sql = "select * from annons "
where = ""
If Requestform("lage") <> "ALLT" Then
   if Len(where) = 0 then
      where = "where lage = '" & lage & "' "
   else
where = "and lage = '" & lage & "' "
   end if
end if

If Requestform("bkat") <> "ALLT" Then
   if Len(where) = 0 then
      where = "where bkat = '" & bkat & "' "
   else
where = "and bkat = '" & bkat & "' "
   end if
end if

'pss för kat
```

Permalänk: https://www.webforum.nu/p/278307

## #5 — jimpa, 2001-07-19T12:49Z

Tackar, tackar... 
Det var precis nåt sånt som jag behövde!!

Mvh Jimpa

Permalänk: https://www.webforum.nu/p/278308

## #6 — jimpa, 2001-07-20T22:01Z

Hmm,

I exemplet ovan så visas ju ingenting om man väljer ALLT
Öhh..
Meningen är ju att allt i tabellen ska skrivas ut.

Eller tänker jag helt fel nu!

Mvh Jimpa

Permalänk: https://www.webforum.nu/p/278309

## #7 — LarsG, 2001-07-21T11:29Z

Ok, nu blir så att om har valt ALLT i alla dropdownmenyer så kommer man att visa alla poster i tabellen.

Permalänk: https://www.webforum.nu/p/278310

## #8 — jimpa, 2001-07-21T16:40Z

Hmmmm...

Kan man få ALLT = \* ?
Asså visa allt i "bkat"
Ex.

```
If (Request.Form("bkat") = "ALLT" ) THEN
bkat= "*"
else
bkat = Request.Form("bkat") 
where = "where bkat = '" & bkat & "' "
```

Mvh Jimpa

Permalänk: https://www.webforum.nu/p/278311

## #9 — LarsG, 2001-07-21T16:50Z

Det blir så nu, om du anger ALLT i en dropdownmeny så ställs ju inga villkor på den kolumen. Det är ju bara onödigt att lägga till något som

```

where bkat like '%'
```

Permalänk: https://www.webforum.nu/p/278312

## #10 — jimpa, 2001-07-21T17:03Z

Onödigt!?

Mycket möjligt \[ :)\]
Men hur ska man göra då för att det ska funka?
Har gjort ett formulär här [www.motocross1.nu/test_form.asp](http://www.motocross1.nu/test_form.asp)  
Hur skulle du ha gjort SQL-frågan för att få det att funka?
Extremt tacksam för ett bra svar!!

Mvh Jimpa

\[Redigerat av jimpa den 21 jul 2001\]

Permalänk: https://www.webforum.nu/p/278313

## #11 — LarsG, 2001-07-21T18:56Z

Jag förstår inte riktigt, för jag tycker att mitt förslag borde ge det resultat du frågar efter. (Bortsett från köpes/säljes som man får särbehandla.)

Permalänk: https://www.webforum.nu/p/278314

## #12 — jimpa, 2001-07-22T12:59Z

Det var ju så här jag ville he det!
Fixade till koden själv!!!  :)

```
<%
SQL = "Select * From annons  "

If (Request.Form("bkat") = "saljes" AND Request.Form("bkat") = "kopes") THEN
SQL = SQL & "Where bkat in ('saljes','kopes') "
Else
SQL = SQL & "Where bkat = '" & bkat & "' "
End If

If (Request.Form("kat") = "Alla" ) THEN
SQL = SQL & "AND kat LIKE '%' "

ElseIf (Request.Form("kat") = "cross_enduro" ) THEN
SQL = SQL & "AND kat in ('cross','enduro')"

Else

SQL = SQL & "AND kat = '" & kat & "' "
End If

If (Request.Form("lage") = "sverige" ) THEN
SQL = SQL & "AND lage LIKE '%' "

Else

SQL = SQL & "AND lage = '" & lage & "' "
End If

If (Request.Form("fabrikat") = "Alla" ) THEN
SQL = SQL & "AND fabrikat LIKE '%' "

Else

SQL = SQL & "AND fabrikat = '" & fabrikat & "' "
End If
%>
```

Mvh Jimpa

Permalänk: https://www.webforum.nu/p/278315

---

Tråden på webben: https://www.webforum.nu/amne/asp/10716-sql-fråga
