---
title: "sökning med två variabler"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/127853-sökning-med-två-variabler"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "dr_damir"
published: "2005-05-08T19:31:48.000Z"
updated: "2005-05-11T06:50:20.000Z"
replies: 9
views: 440
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/databaser-sql/127853-sökning-med-två-variabler"
---

# sökning med två variabler

## #1 — dr_damir, 2005-05-08T19:31Z

Tjena!

Jag skulle vilja göra en fulltextsökning i MySQL.
Tänkte använda mig av match...against.

Jag har två olika variabler jag vill söka med. Så jag skrev såhär:

```
$sql = "SELECT * FROM table1 WHERE MATCH(namn,stavning,kategori,alternativ) 
AGAINST('$sokning' AND '$kategori' IN BOOLEAN MODE) ORDER by namn ASC";
```

Det verkar inte fungera. :OO 
Måste man slå ihop de två variablerna, $sokning och $kategori, innan man söker med dem eller kan man skriva på något liknande sätt?

tack!

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

## #2 — LarsG, 2005-05-09T06:55Z

Var har du hittat den syntaxen?

```
$sql = "SELECT * FROM table1 WHERE MATCH(namn,stavning,kategori,alternativ) 
AGAINST('+" . $sokning . " +" .'$kategori . "' IN BOOLEAN MODE) ORDER by namn ASC";
```

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

## #3 — dr_damir, 2005-05-09T20:42Z

Ok, nä den syntaxen skrev jag själv =), för att visa vad jag menade.

Om man gör en sökning $sql = select from....
Hur gör man sen för att göra en till sökning men i den första sökningen? alltså söka i ett gammalt sögresultat?

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

## #4 — dr_damir, 2005-05-10T16:49Z

hej igen

jag skrev såhär i hopp om att det skulle funka men det verkar inte riktigt så... =(

```
$sql = "SELECT * FROM (SELECT * FROM tabell WHERE namn LIKE '$sokning%') WHERE kategori LIKE '%$kategori%' ORDER by namn ASC";
```

Någon som vet hur man skulle kunna skriva?
tack

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

## #5 — LarsG, 2005-05-10T17:04Z

```
$sql = "select * from tabell " .
" where namn like '" . $sokning . "%'" .
" and kategori like '%" . $kategori . "%'" .
" order by namn asc";
```

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

## #6 — dr_damir, 2005-05-10T17:12Z

Jo så kan man ju göra. Tack för svaren LarsG. Men det finns alltså inget sätt att göra en sökning ur en gammal sökning utan att göra om den första sökningen?

typ:

```
$sql1 = "SELECT * FROM tabell WHERE namn LIKE $sokning"

$sql2 = "SELECT * FROM $sql1 WHERE kategori LIKE $kategori"
```

tack

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

## #7 — LarsG, 2005-05-10T17:26Z

Nej.

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

## #8 — dr_damir, 2005-05-10T17:52Z

Attans! Ett stort tack LarsG!

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

## #9 — missModesty, 2005-05-10T18:17Z

Borde man inte kunna använda sig av views? Typ:

```
CREATE VIEW v AS SELECT * FROM tabell WHERE namn LIKE $sokning

SELECT * FROM v WHERE kategori LIKE $kategori
```

Men jag kan sql måttligt bra så det  var bara en idé jag fick.

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

## #10 — LarsG, 2005-05-11T06:50Z

Jo, om man pratar materialiserade vyer men det finns inte i Mysql.

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/127853-sökning-med-två-variabler
