22. marts 2006 - 10:33
Der er
7 kommentarer og 1 løsning
subquery, where fra "parent" query
jeg har brug for at lave noget ala : select a,b,c,(select andetfelt from tabel2 where substring(a,0,4) = 'den anden tabels a) as d from tabel1 men den kan jeg ikke helt finde hovede og hale i hvordan jeg skal gøre. jeg kunne lave en join, hvis det ikke havde været for det faktum at det ene felt er et substring af et andet :( har i nogen idéer?
Annonceindlæg fra DE-CIX
Edge computing: behandling ved kilden
Edge computing revolutionerer den måde, data behandles på, ved at bringe kapacitet og ydeevne tættere på dér, hvor der er behov for det.
15. april 2025
22. marts 2006 - 11:27
#1
Du skal bare specificere det: SELECT a, b, c, (SELECT andetfelt FROM tabel2 WHERE SUBSTRING(a, 0, 4) = tabel1.a) AS d FROM tabel1
22. marts 2006 - 19:56
#2
Jeg ville jo nok gøre det med en ganske alm. LEFT JOIN i stedet: SELECT t1.a, t1,b, t1.c, t2.andetfelt as d FROM tabel1 t1 LEFT JOIN tabel2 t2 ON SUBSTRING(t1.a, 0, 4) = t2.a
22. marts 2006 - 19:57
#3
Må startpos i en SUBSTRING i det hele taget være 0 i MS SQL? Eller er det bare en fejl?
23. marts 2006 - 09:17
#4
kjulius > At startpos er 0 fremkalder ikke en fejl, men giver den virkning at strengen der returneres bliver kortere: SUBSTRING('Tekst', 1, 3) - giver 'Tek' som forventet; "start ved første og giv mig 3 bogstaver" SUBSTRING('Tekst', 0, 3) - 'Te', man kunne sig at den "starter et bogstav før starten og giver 3 bogstaver derfra: <ingenting>, 'T' og 'e' dex_dexter > Man kan faktisk godt joine på en SUBSTRING ...
smid nogle svar, jeg fik det til at spille med en god gang skodscripting :)
det der var så ikke et svar
Computerworld tilbyder specialiserede kurser i database-management