---
title: "söka på id eller keyword"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/157689-söka-på-id-eller-keyword/page2"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "WebbisNet"
published: "2007-03-01T13:15:01.000Z"
updated: "2007-03-01T22:19:28.000Z"
replies: 28
views: 917
page: 2
pages: 2
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/157689-söka-på-id-eller-keyword"
---

# söka på id eller keyword

_Sida 2 av 2._

## #21 — WebbisNet, 2007-03-01T15:34Z

SELECT \* FROM tblUsers INNER JOIN tblUsers_guestbook ON tblUsers.userID = tblUsers_guestbook.fromUser where (fromUser='1') and not (pprivate=1) or (gbMessage LIKE '%%') order by gbDate desc limit 50

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

## #22 — @nders, 2007-03-01T15:36Z

Det är inte så konstigt om du får ut allt när villkoren säger att du vill ha ut allt.
Varför har du med sökvillkoret "alla poster som har något eller inget i gbmessage", om det inte är det du ska söka på? Ta bort det ur SQL-frågan.

Dessutom är parenteserna du lagt till helt onödiga. Parenteser skall användas för att gruppera villkor man vill skall gälla tillsammans.

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

## #23 — emission, 2007-03-01T16:54Z

Som sagt, som det är nu så kommer du alltid att få ut allt, om du inte anger ett keyword. AND prioriteras alltid högre än OR.

```
Set user=objConn.Execute("SELECT * FROM tblUsers INNER JOIN tblUsers_guestbook ON tblUsers.userID = tblUsers_guestbook.fromUser where fromUser=" & id & " and not pprivate=1 or gbMessage LIKE '%"& keyword &"%'  AND " & len(keyword) & ">0 order by gbDate desc limit 50")
```

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

## #24 — WebbisNet, 2007-03-01T17:03Z

> **@nders skrev:**
>
> Det är inte så konstigt om du får ut allt när villkoren säger att du vill ha ut allt.
> Varför har du med sökvillkoret "alla poster som har något eller inget i gbmessage", om det inte är det du ska söka på? Ta bort det ur SQL-frågan.
> 
> Dessutom är parenteserna du lagt till helt onödiga. Parenteser skall användas för att gruppera villkor man vill skall gälla tillsammans.

hur skulle du ha skrivit det då @nders????

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

## #25 — emission, 2007-03-01T17:25Z

Kolla in koden jag angav.

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

## #26 — WebbisNet, 2007-03-01T19:46Z

> **emission skrev:**
>
> Som sagt, som det är nu så kommer du alltid att få ut allt, om du inte anger ett keyword. AND prioriteras alltid högre än OR.
> 
>
>
> ```
> Set user=objConn.Execute("SELECT * FROM tblUsers INNER JOIN tblUsers_guestbook ON tblUsers.userID = tblUsers_guestbook.fromUser where fromUser=" & id & " and not pprivate=1 or gbMessage LIKE '%"& keyword &"%'  AND " & len(keyword) & ">0 order by gbDate desc limit 50")
> ```

med den koden får jag rätt träff på ID nu men inte på keyword, då får jag

Microsoft OLE DB Provider for ODBC Drivers error '80040e14' 

\[MySQL\]\[ODBC 3.51 Driver\]\[mysqld-4.0.25-max\]You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'and not pprivate=1 or gbMessage LIKE '%tanke%' AND 5 \> 0 order

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

## #27 — emission, 2007-03-01T21:00Z

...och den färdiga SQL:en?? Kom ihåg att id måste ha ett värde.

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

## #28 — WebbisNet, 2007-03-01T21:39Z

id-t har ju värde när jag skriver ut den

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

## #29 — emission, 2007-03-01T22:19Z

...och den färdiga SQL:en????

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/157689-söka-på-id-eller-keyword/page2  
Föregående sida: https://www.webforum.nu/amne/databaser-sql/157689-söka-på-id-eller-keyword.md
