Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


ORDER BY funkar inte med "Union"

Postades av 2004-03-30 13:12:28 - Jonas Stenman, i forum databaser, Tråden har 11 Kommentarer och lästs av 792 personer

Hej, har ett problem med ordningen i resultatet. Behöver sortera efter intPrioritet från tblInkProcentMonster och efter intPrio från tblInkKostnadstyper - måste få allt i ett resultat sorterat på dessa två prioriteter.

tblInkProcentMonster.intTyp är en relation till tblInkKostnadsTyper.intID.

Koden nedan funkar men när jag försöker sätta in ORDER BY vill det inte!

(SELECT tblInkProcentMonster.intTyp, tblInkProcentMonster.intPrioritet
FROM tblInkArende INNER JOIN
tblInkProcentMonster ON tblInkArende.intProvisionsMonster = tblInkProcentMonster.intMonsterID
WHERE tblInkArende.intID = 68) UNION

(SELECT intID, intPrio FROM tblInkKostnadsTyper)

Någon hejare på sql som vet?


Svara

Sv: ORDER BY funkar inte med "Union"

Postades av 2004-03-30 13:27:44 - Mikael Wedham

Var sätter du din ORDER BY?

Testa att ge kolumnerna Alias
SELECT * FROM (
SELECT tblInkProcentMonster.intTyp AS Typ , tblInkProcentMonster.intPrioritet
FROM tblInkArende INNER JOIN
tblInkProcentMonster ON tblInkArende.intProvisionsMonster = tblInkProcentMonster.intMonsterID
WHERE tblInkArende.intID = 68) UNION
(SELECT intID AS Typ, intPrio FROM tblInkKostnadsTyper)
) AS Tabell
ORDER BY Typ

Kanske?


Svara

Sv: ORDER BY funkar inte med "Union"

Postades av 2004-03-30 13:57:41 - Johan Dahlgren

Du lägger ORDER BY sist.
Eftersom UNION lägger ihop till en sammanställd tabell så sorterar du det resultatet.


Svara

Sv: ORDER BY funkar inte med "Union"

Postades av 2004-03-30 14:04:17 - Raderat konto

Ja, nedan är på rätt väg men har fler problem.

(SELECT tblInkProcentMonster.intTyp, tblInkProcentMonster.intPrioritet As Prio
FROM tblInkArende INNER JOIN
tblInkProcentMonster ON tblInkArende.intProvisionsMonster = tblInkProcentMonster.intMonsterID
WHERE tblInkArende.intID = 68)UNION

(SELECT intID, intPrio As Prio FROM tblInkKostnadsTyper)
ORDER BY Prio

Ordningen ska vara följande: intTyp från första select-satsen ska först ordnas efter sin intPrioritet, sen ska det fyllas på med intID från andra select-satsen ordnat efter intPrio. Juxet är att där tblInkProcentMonster.intTyp finns och motsvarar tblInkKostnadsTyper.intID ska tblInkProcentMonster.intTyp komma med i resultatet (ordnat efter intPrioritet) men inte tblInkKostnadsTyper.intPrio! Alltså, jag vet inte om detta går men hade hoppats på det.

Jag har alltså en (tblInkProcentMonster) tabell som har en typ som har en relation till en kostnadstyp (tblInkKostnadsTyper). Prioriteten i tblInkProcentMonster ska komma före eller rättare sagt prioriteras före själva kostnadstypens prioritet. Alltså, om typen (kostnadstypen) inte finns i procentmönstertabellen finns den i Kostnadstyper och ska med i resultatet men ordnat efter sin egen prioritet. Vidare..jag vill även att resultatet inte ska visa dubletter - mao. typer som finns i procentmönster finns alltid i kostnadstyper, när så är fallet ska inte typen från kostnadstyper vara med i resultatet.

Detta känns riktigt klurigt men jag måste få ETT resultat där dessa typer är sorterade.

Tacksam för hjälp.



Svara

Sv: ORDER BY funkar inte med "Union"

Postades av 2004-03-30 14:04:24 - Raderat konto

Ja, nedan är på rätt väg men har fler problem.

(SELECT tblInkProcentMonster.intTyp, tblInkProcentMonster.intPrioritet As Prio
FROM tblInkArende INNER JOIN
tblInkProcentMonster ON tblInkArende.intProvisionsMonster = tblInkProcentMonster.intMonsterID
WHERE tblInkArende.intID = 68)UNION

(SELECT intID, intPrio As Prio FROM tblInkKostnadsTyper)
ORDER BY Prio

Ordningen ska vara följande: intTyp från första select-satsen ska först ordnas efter sin intPrioritet, sen ska det fyllas på med intID från andra select-satsen ordnat efter intPrio. Juxet är att där tblInkProcentMonster.intTyp finns och motsvarar tblInkKostnadsTyper.intID ska tblInkProcentMonster.intTyp komma med i resultatet (ordnat efter intPrioritet) men inte tblInkKostnadsTyper.intPrio! Alltså, jag vet inte om detta går men hade hoppats på det.

Jag har alltså en (tblInkProcentMonster) tabell som har en typ som har en relation till en kostnadstyp (tblInkKostnadsTyper). Prioriteten i tblInkProcentMonster ska komma före eller rättare sagt prioriteras före själva kostnadstypens prioritet. Alltså, om typen (kostnadstypen) inte finns i procentmönstertabellen finns den i Kostnadstyper och ska med i resultatet men ordnat efter sin egen prioritet. Vidare..jag vill även att resultatet inte ska visa dubletter - mao. typer som finns i procentmönster finns alltid i kostnadstyper, när så är fallet ska inte typen från kostnadstyper vara med i resultatet.

Detta känns riktigt klurigt men jag måste få ETT resultat där dessa typer är sorterade.

Tacksam för hjälp.



Svara

Sv: ORDER BY funkar inte med "Union"

Postades av 2004-03-30 14:04:43 - Jonas Stenman

Ja, nedan är på rätt väg men har fler problem.

(SELECT tblInkProcentMonster.intTyp, tblInkProcentMonster.intPrioritet As Prio
FROM tblInkArende INNER JOIN
tblInkProcentMonster ON tblInkArende.intProvisionsMonster = tblInkProcentMonster.intMonsterID
WHERE tblInkArende.intID = 68)UNION

(SELECT intID, intPrio As Prio FROM tblInkKostnadsTyper)
ORDER BY Prio

Ordningen ska vara följande: intTyp från första select-satsen ska först ordnas efter sin intPrioritet, sen ska det fyllas på med intID från andra select-satsen ordnat efter intPrio. Juxet är att där tblInkProcentMonster.intTyp finns och motsvarar tblInkKostnadsTyper.intID ska tblInkProcentMonster.intTyp komma med i resultatet (ordnat efter intPrioritet) men inte tblInkKostnadsTyper.intPrio! Alltså, jag vet inte om detta går men hade hoppats på det.

Jag har alltså en (tblInkProcentMonster) tabell som har en typ som har en relation till en kostnadstyp (tblInkKostnadsTyper). Prioriteten i tblInkProcentMonster ska komma före eller rättare sagt prioriteras före själva kostnadstypens prioritet. Alltså, om typen (kostnadstypen) inte finns i procentmönstertabellen finns den i Kostnadstyper och ska med i resultatet men ordnat efter sin egen prioritet. Vidare..jag vill även att resultatet inte ska visa dubletter - mao. typer som finns i procentmönster finns alltid i kostnadstyper, när så är fallet ska inte typen från kostnadstyper vara med i resultatet.

Detta känns riktigt klurigt men jag måste få ETT resultat där dessa typer är sorterade.

Tacksam för hjälp.


Svara

Sv: ORDER BY funkar inte med "Union"

Postades av 2004-03-30 14:56:20 - Mikael Wedham

Med en dåres envishet postar jag:

SELECT * FROM (
SELECT tblInkProcentMonster.intTyp AS Typ , tblInkProcentMonster.intPrioritet AS Prio
FROM tblInkArende INNER JOIN
tblInkProcentMonster ON tblInkArende.intProvisionsMonster = tblInkProcentMonster.intMonsterID
WHERE tblInkArende.intID = 68) UNION
(SELECT intID AS Typ, intPrio AS Prio FROM tblInkKostnadsTyper)
) AS Tabell
ORDER BY Typ, Prio

Notera tillägget av "AS Prio"
Dubletter tas bort automatiskt, för att behålla dem skriver du "UNION ALL"

OBS!!! Jag har förutsatt att du har SQL Server...


Svara

Sv: ORDER BY funkar inte med "Union"

Postades av 2004-03-30 15:12:11 - Jonas Stenman

Ja, men jag får inte resultatet jag vill ha, hänsvisar till mitt senaste svar. Det verkar som det inte är möjligt. Får nog tänka om och lösa detta på ett annat sätt. Tack ändå.


Svara

Sv: ORDER BY funkar inte med "Union"

Postades av 2004-03-31 08:47:48 - Johan Dahlgren

Kanske du kan lösa det med hjälp av Temp-tabeller?

Typ:
INSERT INTO #Temp1
SELECT bla bla bla
ORDER BY 1, 2, 3

INSERT INTO #Temp2
SELECT bla bla bla
ORDER BY 1, 2, 3

SELECT * FROM #Temp1
UNION
SELECT * FROM #Temp2

DROP TABLE #Temp1
DROP TABLE #Temp2

Om du förstår vad jag menar...
/Johan


Svara

Sv: ORDER BY funkar inte med "Union"

Postades av 2004-03-31 09:25:23 - Andreas Hillqvist

Har försökt tolka hur du vill ha ut din data. Är det möjligen att denna fråga hjälper dig på vägen till önskat resultat:
<code>
(SELECT tblInkKostnadsTyper.intID As KostnadsTypeID,
tblInkKostnadsTyper.intPrio As KostnadsTypePrioritet,
Null As ProcentMonsterId,
Null As ProcentMonsterPrioritet
FROM tblInkKostnadsTyper)
UNION ALL
(SELECT tblInkProcentMonster.intTyp As KostnadsTypeID,
Null As KostnadsTypePrioritet,
tblInkProcentMonster.intID As ProcentMonsterId,
tblInkProcentMonster.intPrioritet As ProcentMonsterPrioritet
FROM tblInkProcentMonster LEFT JOIN
tblInkArende ON tblInkProcentMonster.intMonsterID = tblInkArende.intProvisionsMonster
WHERE tblInkArende.intID = 68)
ORDER BY KostnadsTypeID, KostnadsTypePrioritet, ProcentMonsterPrioritet
</code>


Svara

Sv: ORDER BY funkar inte med "Union"

Postades av 2004-04-01 11:17:03 - Mikael Wedham

Kan du ge ett exempel på data i de två tabellerna och hur du vill ha resultatet?

/micke


Svara

Sv: ORDER BY funkar inte med "Union"

Postades av 2004-04-01 19:24:16 - Ulf Magnusson

Hej,
vet inte om jag fattar allt, men...

(SELECT 1, tblInkProcentMonster.intTyp, tblInkProcentMonster.intPrioritet As Prio
FROM tblInkArende INNER JOIN
tblInkProcentMonster ON tblInkArende.intProvisionsMonster = tblInkProcentMonster.intMonsterID
WHERE tblInkArende.intID = 68)
UNION
(SELECT 2, intID, intPrio As Prio FROM tblInkKostnadsTyper
WHERE NOT EXISTS (SELECT NULL FROM tblInkProcentMonster
WHERE intTyp = tblInkKostnadsTyper.intID))
ORDER BY 1,2,3

/Uffe


Svara

Nyligen

  • 18:37 Remove the bumper in AUDI
  • 15:35 Chicken road crash game
  • 21:41 Automotive Services UK
  • 20:44 Erfarenhet av CBD-olja mot sömnpro
  • 12:13 Sex Dolls for Sale
  • 19:42 Online Casinos for Haitian Players
  • 19:38 Rekommendera något intressant
  • 19:13 Международная перевозка грузов

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 889
27 965
271 778
508
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies