---
title: "Sökning i databasen."
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/109882-sökning-i-databasen"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "M.Cheraghi"
published: "2004-08-23T17:52:57.000Z"
updated: "2004-08-24T13:25:55.000Z"
replies: 13
views: 1620
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/109882-sökning-i-databasen"
---

# Sökning i databasen.

## #1 — M.Cheraghi, 2004-08-23T17:52Z

Hello :)

Detta har varit uppe många gånger, *men* Jag vet inte vad jag ska söka på :( Grejjen är att jag ska ha ett sökfält som man kan söka i database (Jag lovar, det är sant :e)

min kod hittills är:

```
strSearch = reqest.form("fastSearch")

strSQL = "SELECT * FROM tblUser WHERE username = '"& strUsername &"'"
Set RS = Conn.execute(strSQL)
```

Låt oss säga att jag söker på 'Anders' då vill jag att den skall Loopa ut 'Anders' men även 'Anders_den_coole' eller t.ex 'Coola_anders' Sen vill jag sortera upp dom i någon ordning, men jag vet inte vilket ordning själv ;) antagligen det som matchade bäst av alla :)

Någon som förstår? elelr vill nu har bättre förklaring? =)

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

## #2 — erka, 2004-08-23T17:56Z

Använd % tecken

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

## #3 — M.Cheraghi, 2004-08-23T17:57Z

> **erka skrev:**
>
> Använd % tecken

Whieee, men hmmpf var?  :r

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

## #4 — erka, 2004-08-23T17:58Z

username LIKE '%" & strUsername & "%'

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

## #5 — M.Cheraghi, 2004-08-23T17:59Z

> **erka skrev:**
>
> username LIKE '%" & strUsername & "%'

Okej, ska ta en titt på det ;) tack :)
I'll be back :)

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

## #6 — M.Cheraghi, 2004-08-23T18:08Z

Okej det verka fungera alldeles utmärkt :)
Tack så mycket för hjälpen :)

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

## #7 — M.Cheraghi, 2004-08-23T18:24Z

Något bra tips på hur man ska sortera sökresultatet?
Just nu plockar den fram dom som las in i databasen först högst upp dvs äldre, men jag vill den som passade sökningen bäst, av något slag. Några tips? :)

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

## #8 — erka, 2004-08-23T18:41Z

Du skulle kunna slänga in allt i en array och sortera den efter en viss ordning tex. Lägg de som matchar exakt först i arrayen, och fyll sedan på den med de andra i bokstavsordning.

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

## #9 — LarsG, 2004-08-24T07:08Z

Hur definierar du

> den som passade sökningen bäst

?

Exemplifiera gärna.

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

## #10 — M.Cheraghi, 2004-08-24T12:50Z

> **LarsG skrev:**
>
> Hur definierar du
> 
>
>
> > den som passade sökningen bäst
>
> 
> 
> ?
> 
> Exemplifiera gärna.

T.ex låt oss säga att följande finns i databasen

Erik
Erik_den_store
Erik_den_starke

Ok man söker på t.ex \[Erik\] ska den rada upp i följande ordning

Erik
Erik_den_starke
Erik_den_Store

men om jag t.ex söker på \[den\] och samtidigt har \[den\] och \[den_där\] i databasen vill jag rada upp som

Den
Den Där
Erik Den starke
Erik den store

Dvs om jag får en Perfect match på sökningen skall denne ligga högst upp resten rangordnas i bokstavsordning beroende på tabellen Username

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

## #11 — LarsG, 2004-08-24T12:58Z

Nu beror det på vilken dbms du använder, i de flesta utom Access så borde följande fungera

```
select * from userrname
where username LIKE '%" & strUsername & "%'" &
order by case when username = '" & strUsername & "'" & 
" then 0 else 1 end, username
```

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

## #12 — M.Cheraghi, 2004-08-24T13:24Z

> **LarsG skrev:**
>
> Nu beror det på vilken dbms du använder, i de flesta utom Access så borde följande fungera
> 
>
>
> ```
> select * from userrname
> where username LIKE '%" & strUsername & "%'" &
> order by case when username = '" & strUsername & "'" & 
> " then 0 else 1 end, username
> ```

Det fungerar, lite halvt kan man säga.
Vad jag än söker på så listar den alla i hela databasen.
Oavsett vad man söker på. Så egentligen söker den inte ens :)

```
strSQL = "select * from tblUser where username LIKE '%" & strUsername & "%' order by case when username = '" & strUsername & "'" & " then 0 else 1 end, username"

Set RS = Conn.execute(strSQL)
```

jag hämtar dut värderna med *RS("kolumnnamn")* om det har någon betydelse :)

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

## #13 — @nders, 2004-08-24T13:24Z

Hur sätter du *strUsername* då? Hur ser den färdiga SQL-frågan ut?

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

## #14 — M.Cheraghi, 2004-08-24T13:25Z

> **@nders skrev:**
>
> Hur sätter du *strUsername* då? Hur ser den färdiga SQL-frågan ut?

Jag sätter inte strUsername....
... Jag sätter strSearch ... :e
men det är nog inte därför ;) (irooni)
kom på det själv precs

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/109882-sökning-i-databasen
