---
title: "sql like fråga"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/137489-sql-like-fråga"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "jlee"
published: "2005-11-12T21:07:06.000Z"
updated: "2005-11-13T20:50:35.000Z"
replies: 7
views: 323
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/137489-sql-like-fråga"
---

# sql like fråga

## #1 — jlee, 2005-11-12T21:07Z

Om jag vill kolla det som är i **fetstil** flera gånger i koden för olika årtal, måste jag då skriva om databas ansl + sett conn mm igen eller finns det ngt annat sätt?

```
<%
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("news.mdb")
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open strDSN
[B]response.Write "<b>2005</b>"
sql = "SELECT * FROM tabell1 where datum like '%2005%' order BY ID DESC"[/B]
Set Rs = Conn.Execute (sql)
Do While Not rs.EOF %>
              </font><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><br>
              <a href="sida1.asp?id=<%=rs("id")%>"><%=rs("p1")%></a> 
              <% Rs.MoveNext
Loop
Conn.Close
Set Conn = Nothing
%>
```

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

## #2 — Peter S, 2005-11-12T21:18Z

Nej, du behöver inte skriva om databaskopplingen (såvida du inte stänger den förstås).

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

## #3 — joel_joel88, 2005-11-12T22:49Z

Du kan ju lägga in en variabel i stället för att skriva in själva år talet i sql-satsen.
I variabeln lägger du in det årtal du vill kolla, sedan kör du den med conn.execute(SQL).

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

## #4 — LarsG, 2005-11-13T12:05Z

Använd inte like med kolumner av typen date, det är inte giltigt i standard SQL och fungerar enbart i vissa DBMS. Om det fungerar så blir frågan väldigt ineffektiv eftersom det inte går att utnyttja index. Ange ett slutet intervall i stället. 

```
SELECT <kolumner> 
FROM tabell1 
where datum between '2005-01-01' and 2005-12-31'
order by id desc
```

Ännu en förmaning:

ange explicit vilka kolumner du vill hämta istället för \*

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

## #5 — jlee, 2005-11-13T20:35Z

ok, och om jag sen bara vill visa 2005 istället för 2005-10-25 tex i rs("datum") hur begränsar jag det?

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

## #6 — devotion, 2005-11-13T20:44Z

:)

Använder datePart

```
datePart("YYYY", rs("datum"))
```

<http://www.devguru.com/technologies/vbscript/13916.asp> 

Mvh
Henrik

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

## #7 — jlee, 2005-11-13T20:48Z

Jättebra, tack!

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

## #8 — devotion, 2005-11-13T20:50Z

vassego!   :)

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

---

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