/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
Query med summasion og lidt til...
Fra : Lars L. Christensen


Dato : 27-01-05 06:20

Hej gutter (og gutinder, for I må også være med)...

Jeg har 2 tabeller:

raw.*
+--------+--------+-------+
| src_as | dst_as | bytes |
+--------+--------+-------+

as_no.*
+----+------+
| as | name |
+----+------+

hvad jeg ønsker er, at src_as og dst_as i raw.* tabellen skal erstattes
med det ekvivalente name fra as_no.* tabellen.
Endeligt bliver hver tænkelig kombination af src_as og dst_as summeret
over bytes (denne del er der styr på)...

mit ønskede resultat skal være noegt i stil med:
+----------------------+----------------------+-------+
| src_as_name = src_as | dst_as_name = dst_as | bytes |
+----------------------+----------------------+-------+

Pt. har jeg følgende sql-streng:

   select sum(bytes), src_as, dst_as from raw group by src_as,dst_as

selve sql-strengen burde vise, hvor min udskifning er interessant.

Jeg håber der er nogen der kan hjælpe her.

mvh
lars Christensen

 
 
Kristian Damm Jensen (28-01-2005)
Kommentar
Fra : Kristian Damm Jensen


Dato : 28-01-05 09:38


Lars L. Christensen wrote:
> Hej gutter (og gutinder, for I må også være med)...
>
> Jeg har 2 tabeller:
>
> raw.*
> +--------+--------+-------+
> | src_as | dst_as | bytes |
> +--------+--------+-------+
>
> as_no.*
> +----+------+
> | as | name |
> +----+------+
>
> hvad jeg ønsker er, at src_as og dst_as i raw.* tabellen skal
erstattes
> med det ekvivalente name fra as_no.* tabellen.
> Endeligt bliver hver tænkelig kombination af src_as og dst_as
summeret
> over bytes (denne del er der styr på)...
>
> mit ønskede resultat skal være noegt i stil med:
> +----------------------+----------------------+-------+
> | src_as_name = src_as | dst_as_name = dst_as | bytes |
> +----------------------+----------------------+-------+
>
> Pt. har jeg følgende sql-streng:
>
>    select sum(bytes), src_as, dst_as from raw group by
src_as,dst_as
>
> selve sql-strengen burde vise, hvor min udskifning er interessant.

En klassiker. Du skal joine den samme tabel på i to forskellige
instanser.

select sum(bytes), src.name src_as_name, dst.name dst_as_name
from raw
, as_no src
, as_no dst
where raw.src_as = src.as
and raw.dst_as = dst.as
group by src_as_name, dst_as_name

> Jeg håber der er nogen der kan hjælpe her.
Håber det hjalp!

VH
Kristian


Kaj Julius (30-01-2005)
Kommentar
Fra : Kaj Julius


Dato : 30-01-05 03:05


--- SNIP ---
En klassiker. Du skal joine den samme tabel på i to forskellige
instanser.

select sum(bytes), src.name src_as_name, dst.name dst_as_name
from raw
, as_no src
, as_no dst
where raw.src_as = src.as
and raw.dst_as = dst.as
group by src_as_name, dst_as_name

--- SNIP ---

Eller skrevet på en anden måde (som jeg personligt foretrækker, selv om den
selvfølgelig er funktionelt identisk med ovenstående):

SELECT SUM(bytes) AS bytes, src.name AS src_as_name, dst.name AS dst_as_name
FROM raw
INNER JOIN as_no AS src
ON raw.src_as = src.as
INNER JOIN as_no AS dst
ON raw.src_as = dst.as
GROUP BY src_as_name, dst_as_name




Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408935
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste