Avatar billede janemil Nybegynder
02. maj 2006 - 15:57 Der er 5 kommentarer og
1 løsning

Nested SQL

Hvordan får jeg resultatet fra den "yderste" SQL ind til den nestede, så jeg kan selected med den derinde?

SELECT DISTINCT TOP 100 PERCENT dbo.net_site.site_code,
                          (SELECT    TOP 1 dbo.net_ip.ip_defaultGateway
                            FROM          dbo.net_ip
                            WHERE      device_id = ***** her skal være en del mere. Men hvordan får jeg resultatet fra site_code derind? ) AS defaultGateway
FROM        dbo.net_device INNER JOIN
                      dbo.net_ip ON dbo.net_device.device_id = dbo.net_ip.device_id INNER JOIN
                      dbo.net_service ON dbo.net_device.service_id = dbo.net_service.service_id INNER JOIN
                      dbo.net_site ON dbo.net_service.site_id = dbo.net_site.site_id
WHERE    (dbo.net_device.status = 'present') AND (dbo.net_device.device_type = 'Router') AND (dbo.net_ip.ip_defaultGateway <> '')
ORDER BY dbo.net_site.site_code
Avatar billede trer Nybegynder
02. maj 2006 - 16:10 #1
Hej Jan

Brug aliaser for dine tabeller - så kan du få resultatet ind.

således

select x.kolonnenavn,
        (select y.kolonnenavn from dbo.tabel1 as y where x.kolonne=y.kolonne) as YY
from dbo.tabel2 as X

Det gør også koden kortere og mere overskuelig end at bruge fqn alle steder...
Avatar billede janemil Nybegynder
02. maj 2006 - 16:11 #2
Lig lige svar
Avatar billede trer Nybegynder
02. maj 2006 - 16:22 #3
Ok, et svar.
Avatar billede janemil Nybegynder
02. maj 2006 - 17:05 #4
Kan ikke få det til at virke. Kan du få dbo.net_site.site_code fra den yderste SQL ind hvor der står *********** ?

SELECT DISTINCT TOP 100 PERCENT dbo.net_site.site_code,
                          (SELECT    TOP 1 dbo.net_ip.ip_defaultGateway
                            FROM          dbo.net_device INNER JOIN
                                                  dbo.net_ip ON dbo.net_device.device_id = dbo.net_ip.device_id INNER JOIN
                                                  dbo.net_service ON dbo.net_device.service_id = dbo.net_service.service_id INNER JOIN
                                                  dbo.net_site ON dbo.net_service.site_id = dbo.net_site.site_id
                            WHERE      (dbo.net_site.site_code = '***********')) AS defaultGateway
FROM        dbo.net_device INNER JOIN
                      dbo.net_ip ON dbo.net_device.device_id = dbo.net_ip.device_id INNER JOIN
                      dbo.net_service ON dbo.net_device.service_id = dbo.net_service.service_id INNER JOIN
                      dbo.net_site ON dbo.net_service.site_id = dbo.net_site.site_id
WHERE    (dbo.net_device.status = 'present') AND (dbo.net_device.device_type = 'Router') AND (dbo.net_ip.ip_defaultGateway <> '')
ORDER BY dbo.net_site.site_code
Avatar billede trer Nybegynder
02. maj 2006 - 17:15 #5
SELECT distinct X.site_code,
                          (SELECT    TOP 1 dbo.net_ip.ip_defaultGateway
                            FROM          dbo.net_device INNER JOIN
                                                  dbo.net_ip ON dbo.net_device.device_id = dbo.net_ip.device_id INNER JOIN
                                                  dbo.net_service ON dbo.net_device.service_id = dbo.net_service.service_id INNER JOIN
                                                  dbo.net_site as Y ON dbo.net_service.site_id = Y.site_id
                            WHERE      (Y.site_code = X.site_code)) AS defaultGateway
FROM        dbo.net_device INNER JOIN
                      dbo.net_ip ON dbo.net_device.device_id = dbo.net_ip.device_id INNER JOIN
                      dbo.net_service ON dbo.net_device.service_id = dbo.net_service.service_id INNER JOIN
                      dbo.net_site AS X
ON dbo.net_service.site_id = X.site_id
WHERE    (dbo.net_device.status = 'present') AND (dbo.net_device.device_type = 'Router') AND (dbo.net_ip.ip_defaultGateway <> '')
ORDER BY X.site_code
Avatar billede janemil Nybegynder
02. maj 2006 - 17:16 #6
Det kan jeg sku service.... TAKKER
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester