---
title: "j*vligt klurig SQL sats.."
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/106735-j-vligt-klurig-sql-sats"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "Bosse168"
published: "2004-07-04T20:20:17.000Z"
updated: "2004-07-05T13:03:52.000Z"
replies: 11
views: 492
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/106735-j-vligt-klurig-sql-sats"
---

# j*vligt klurig SQL sats..

## #1 — Bosse168, 2004-07-04T20:20Z

Kan man på något sätt hämta skribents namn och datumet ur en annan tabell i min nuvarande SQL sats? Alltså så jag slipper sätta en RecSet till i loopen

nuvarande:

```
SQL="SELECT c1.id,c1.namn,c1.beskriv,c2.id as subid,c2.namn as namn2,c2.beskriv as beskriv2,c2.inlagg as inlagg,c2.tradar as tradar FROM forum_cat c1 left join forum_cat c2 on c2.sub=c1.id where c1.sub=0 order by c1.namn,c2.namn"
```

Den jag vill få in:

```
"Select skribent,datum FROM forum_inlagg WHERE catID="& Rs("id") &" AND subID="& Rs("subid") &" ORDER BY datum DESC LIMIT 1"
```

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

## #2 — LarsG, 2004-07-04T21:36Z

Det är bara att lägga till ytterligare joinklausuler.

```
SELECT c1.id,c1.namn,c1.beskriv,c2.id as subid,
       c2.namn as namn2,c2.beskriv as beskriv2,
       c2.inlagg as inlagg,c2.tradar as tradar ,
       skribent,datum
FROM forum_cat c1 left join forum_cat c2 
on c2.sub=c1.id left join forum_inlagg
on cat_id = c1.id and subId = c2.id
where c1.sub=0 
order by datum,c1.namn,c2.namn
```

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

## #3 — Bosse168, 2004-07-04T22:31Z

Hur gör jag för att hämta ut skribent namnet och datumet?

```
SQL="SELECT c1.id,c1.namn,c1.beskriv,c2.id as subid, " & _
       "c2.namn as namn2,c2.beskriv as beskriv2, " & _
       "c2.inlagg as inlagg,c2.tradar as tradar , " & _
       "skribent,datum " & _
"FROM forum_cat c1 left join forum_cat c2  " & _
"on c2.sub=c1.id left join forum_inlagg " & _
"on catID = c1.id and subId = c2.id " & _
"where c1.sub=0  " & _
"order by datum,c1.namn,c2.namn"
```

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

## #4 — Peeer, 2004-07-04T22:39Z

Precis som du gör för att hämta ut ex. beskrivningen eller subid't. typ rs("skribent") och rs("datum").

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

## #5 — Bosse168, 2004-07-04T22:40Z

Jag får inte ut någonting när jag använder rs("skribent")

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

## #6 — Bosse168, 2004-07-04T22:46Z

Det var inget.
Men nu har ett annat problem dykt upp när jag loopar ut allt och det inte finns några inlägg så får jag detta fel mess fast jag använder en IF sats.

fel meddelandet:
Microsoft VBScript runtime error '800a005e' 

Invalid use of Null: 'Month(...)' 

koden:

```
If Rs("datum")="" Then
Response.Write("-")
Else
Response.Write Day(Rs("datum")) & " " & MonthName(Month(Rs("datum")),True) &" kl "& FormatDateTime(Rs("datum"), 4) &"<br>"& Rs("skribent") &""
End If
```

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

## #7 — solbulle, 2004-07-04T23:00Z

Fullösning:

```
If Rs("datum")&""="" Then
```

Den rätta lösningen lär vara att kolla om ditt RS innehåller inget eller null.

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

## #8 — Bosse168, 2004-07-04T23:04Z

```
If isNull(Rs("datum")) Then
```

löste d, tackar för hjälpen

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

## #9 — Bosse168, 2004-07-04T23:09Z

Nu märkte jag ett annat fel.
Om den hittar någon post i forum_inlagg så slutar den loopen....
Kanske ska ha med looparna.. ;)

```

Do until Rs.eof
%>

                      <tr> 
                        <td colspan="4" class="rubrik2" bgcolor="#EFEFEF">

<%=Rs("namn")%>

						</td>
                      </tr>
                      <tr> 
                        <td colspan="4" height="1" bgcolor="#CCCCCC"></td>
                      </tr>
<%

strNamn = rs("namn")
Do
  If rs.EOF Then Exit Do
  If rs("namn") <> strNamn Then Exit Do

%>

'--- lite kod

  rs.MoveNext
Loop

Loop
```

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

## #10 — Bosse168, 2004-07-05T12:36Z

Ingen som vet vad som stoppar loopen?

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

## #11 — Peeer, 2004-07-05T13:01Z

```
 If rs("namn") <> strNamn Then Exit Do
```

Stoppar loopen om namnet ändras. Varför har du med den if-satsen?

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

## #12 — Bosse168, 2004-07-05T13:03Z

För först loopar jag ut huvudkategorins rubrik och sedan alla underkategorier tillhörande den. Men tror jag löste det genom att ta bort

```
datum,
```

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/106735-j-vligt-klurig-sql-sats
