/ 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
Udformning af view
Fra : Morten Snedker


Dato : 13-09-05 11:37

Jeg har et view, illustreret på www.dbconsult.dk/ms/sqlquestion.jpg.

Det er ikke så'n at overtage andres...

Det må kunne gøres smartere. For hver forekomst af FejlkodeID, skal
jeg have listet tblFejlantal.Antal_Fejl som kolonne.

Mit mål er altså at slippe for hver case-sætning, som jo i øvrigt
heller ikke er særlig generisk - der kan jo komme nye fejlkoder til.

Alias'et F10, F11 etc, svarer til fejlkoden, blot med "F" som prefix.

Idéer as what to do?


mvh /Snedker
---

 
 
Peter Lykkegaard (13-09-2005)
Kommentar
Fra : Peter Lykkegaard


Dato : 13-09-05 13:12


Morten Snedker wrote:
> Jeg har et view, illustreret på www.dbconsult.dk/ms/sqlquestion.jpg.
>
> Det er ikke så'n at overtage andres...
>
> Det må kunne gøres smartere. For hver forekomst af FejlkodeID, skal
> jeg have listet tblFejlantal.Antal_Fejl som kolonne.
>
> Mit mål er altså at slippe for hver case-sætning, som jo i øvrigt
> heller ikke er særlig generisk - der kan jo komme nye fejlkoder til.
>
Til MSAccess eller?

MSAccess har en pivotering funktion

Ellers kan du bruge Group By og Sum i MSSQL
Her kommer resultatet til at ligge i et antal rækker/poster

- Peter


Morten Snedker (13-09-2005)
Kommentar
Fra : Morten Snedker


Dato : 13-09-05 14:21

On 13 Sep 2005 05:11:37 -0700, "Peter Lykkegaard"
<peter.aghl@gmail.com> wrote:

>> Jeg har et view, illustreret på www.dbconsult.dk/ms/sqlquestion.jpg.

>> Det må kunne gøres smartere. For hver forekomst af FejlkodeID, skal
>> jeg have listet tblFejlantal.Antal_Fejl som kolonne.
>>
>> Mit mål er altså at slippe for hver case-sætning, som jo i øvrigt
>> heller ikke er særlig generisk - der kan jo komme nye fejlkoder til.
>>
>Til MSAccess eller?

Nej, MS-SQL.

>Ellers kan du bruge Group By og Sum i MSSQL
>Her kommer resultatet til at ligge i et antal rækker/poster

Nej, det kan jeg ikke.

Hvis du kigger illustrationen igen (?):

Forstil dig, at tblFejlantal indeholder 2 poster - FejlantalID 1 og 2.
tblFejlkode indholder 50 poster, hvor Fejlkode har 1-50.

Den første post har kolonnerne:

FejlAntalID, [1], [2]....[50]. Altså 50 kolonner, som repræsenterer
hver post i tblFejlkode.

/snedker
---

Peter Lykkegaard (13-09-2005)
Kommentar
Fra : Peter Lykkegaard


Dato : 13-09-05 14:59


Morten Snedker wrote:
>
> Forstil dig, at tblFejlantal indeholder 2 poster - FejlantalID 1 og 2.
> tblFejlkode indholder 50 poster, hvor Fejlkode har 1-50.
>
> Den første post har kolonnerne:
>
> FejlAntalID, [1], [2]....[50]. Altså 50 kolonner, som repræsenterer
> hver post i tblFejlkode.
>
Dvs rækkerne i tblFejlkode skal transformeres om til kolonner?
Transform og Pivot i MSAccess er jo lige til højre fod :)

Prøv at kaste et blik på det her:
http://www.sqlteam.com/item.asp?ItemID=2955
Jeg har ikke selv prøvet det men det ser da tilforladeligt ud :)

Du kan evt sende mig sql scripts til oprettelse af de tabeller du har
hvis jeg skal begive mig ud i det uvisse :)

- Peter


Michael Zedeler (25-09-2005)
Kommentar
Fra : Michael Zedeler


Dato : 25-09-05 13:27

Morten Snedker wrote:
> Jeg har et view, illustreret på www.dbconsult.dk/ms/sqlquestion.jpg.
>
> Det er ikke så'n at overtage andres...
>
> Det må kunne gøres smartere. For hver forekomst af FejlkodeID, skal
> jeg have listet tblFejlantal.Antal_Fejl som kolonne.
>
> Mit mål er altså at slippe for hver case-sætning, som jo i øvrigt
> heller ikke er særlig generisk - der kan jo komme nye fejlkoder til.
>
> Alias'et F10, F11 etc, svarer til fejlkoden, blot med "F" som prefix.
>
> Idéer as what to do?

SELECT SUM(Antal_fejl) AS TotalFejl, Fejlkode
GROUP BY FejlKode

Der mangler nogle mindre ting, som sikkert kan føjes til.

Mvh. Michael.

Søg
Reklame
Statistik
Spørgsmål : 177459
Tips : 31964
Nyheder : 719565
Indlæg : 6408180
Brugere : 218881

Månedens bedste
Årets bedste
Sidste års bedste