webForumDet fria alternativet

Minneslucka

3 svar · 191 visningar · startad av mikul

mikulMedlem sedan aug. 20013 824 inlägg
#1

Hej, jag kom på att jag hade glömt av en sak.

Om man har två tabeller som ser ut så här:

Tbl1:
fld1 | fld2 | fld3

Tbl2:
fld1 | fld2 | fld3

Och skriver en query som ser ut så här:

Select t1.*, t2.* from tbl1 as t1, tbl2 as t2 
where t1.fld1 = t2.fld1;

Hur väljer jag sedan vilken kolumn jag skall skriva ut med recordsetet, för man kan ju inte skriva rs("t1.fd1")...

Är det så att man måste deklarera ett nytt namn för alla kolumner i sql-Queryn?

/ Mikul

@ndersMedlem sedan juni 200032 969 inlägg
#2

Re: Minneslucka

mikul skrev:

Är det så att man måste deklarera ett nytt namn för alla kolumner i sql-Queryn?

Ja, de fält som har samma namn i de båda tabellerna får du ge ett nytt namn i frågan.

Mvh

ampyMedlem sedan feb. 20011 498 inlägg
#3

Det smartaste sättet tycker jag är att bara hämta de kolumner man behöver hämta och sen anger man indexnumret i recordsetet.

Ex:

Select t1.kolumn1, t2.kolumn1 from tbl1 as t1, tbl2 as t2 
where t1.fld1 = t2.fld1;

När man sen ska skriva ut de två kolumnerna skriver man rs(0) och rs(1).

mikulMedlem sedan aug. 20013 824 inlägg
#4

Ok, Tack båda två!
Jo, jag brukar alltid bara skriva dom kolumner jag skall ha med, men jag hade inte så mycket tid på mig att skriva frågan ;)

/ Mikul

132 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)