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


En speciell order by...

Postades av 2006-08-16 19:54:09 - Patrik Wårdmark, i forum asp - allmänt, Tråden har 11 Kommentarer och lästs av 771 personer

Vill sortera en mängd poster enligt två fält: ett heltal och en textrubrik.
Jag vill få ut alla poster i a-ö ordning, men med ett undantag. Jag vill först få ut posterna där heltalet<>0 med en inbördes a-ö ordning, sedan efter dessa de fält med heltal=0 också i en inbördes a-ö ordning. Hoppas jag är tydlig nog? :)

Jag har nu löst det genom att först köra en sats som hämtar de första och sen en sats som hämtar de andra, men undrar om det istället kan hämtas i ett svep?


Svara

Sv: En speciell order by...

Postades av 2006-08-16 21:48:34 - Thomas Vanhaniemi

Du kan göra det med en UNION
<code>
(SELECT * FROM tabell WHERE heltal <> 0 ORDER BY namn)
UNION
(SELECT * FROM tabell WHERE heltal = 0 ORDER BY namn)
</code>


Svara

Sv:En speciell order by...

Postades av 2006-08-16 22:58:07 - Patrik Wårdmark

Prövade men fick inte ut posterna i "två block" som önskat. Vill få ut posterna enligt exempel nedan där första halvan visar de med heltal<>0 och andra halvan de poster med heltal=0. Båda blocken separat sorterade i a-ö ordning.

anna
david
ingela
örjan
astrid
kalle
mona
åsa


Svara

Sv: En speciell order by...

Postades av 2006-08-17 07:53:45 - Jenny Månsson

Så här kan du göra...

SELECT *, CASE WHEN Heltal <> 0 THEN 0 ELSE 1 END AS CompHelTal FROM tabell ORDER BY CompHeltal, namn


Svara

Sv: En speciell order by...

Postades av 2006-08-17 08:55:13 - Thomas Vanhaniemi

Vad har du för databas? Access?
När jag testar på MySQL får jag ut resultat som du vill ha, vet dock inte hur Access hanterar sortering i UNION.
Viktigt är i alla fall att ha parenteser runt de båda SELECT satserna.


Svara

Sv:En speciell order by...

Postades av 2006-08-17 12:53:06 - Patrik Wårdmark

Japp, använder Access.

Jenny, när jag prövar ditt får jag:

Microsoft OLE DB Provider for ODBC Drivers fel '80040e14'
[Microsoft][Drivrutin för ODBC Microsoft Access] Syntaxfel (operator saknas) i frågeuttrycket 'CASE WHEN egenmeny<>0 THEN 0 ELSE 1 END'.

Så här exakt ser min sats ut, när det skrivs enligt ditt mönster:

SELECT *, CASE WHEN egenmeny<>0 THEN 0 ELSE 1 END AS CompHelTal FROM sidor_data ORDER BY CompHeltal asc, rubrik asc


Svara

Sv: En speciell order by...

Postades av 2006-08-17 13:14:46 - Jenny Månsson

ok jag skrev för sql, testa detta i access:


SELECT *, iif ((egenmeny<>0), 0, 1) AS CompHelTal FROM sidor_data ORDER BY CompHeltal asc, rubrik asc


Svara

Sv:En speciell order by...

Postades av 2006-08-17 13:21:57 - Patrik Wårdmark

Får nu istället felet:

Microsoft OLE DB Provider for ODBC Drivers fel '80040e10'
[Microsoft][Drivrutin för ODBC Microsoft Access] För få parametrar angavs. 1 förväntades.


Svara

Sv: En speciell order by...

Postades av 2006-08-17 14:10:25 - Jenny Månsson

oops slarvigt av mig. Det går inte att skriva aliaset i order by...skriv så här (jag har testat frågan nu....
SELECT *, iif ((egenmeny<>0), 0, 1) AS CompHelTal FROM sidor_data ORDER BY iif ((egenmeny<>0), 0, 1) asc, rubrik asc


Svara

Sv:En speciell order by...

Postades av 2006-08-17 19:53:03 - Patrik Wårdmark

Hmm... Inget felmeddelande nu längre, men hos mig verkar den fasta i en oändlig loop nu istället när sql-satsen körs. :(


Svara

Sv: En speciell order by...

Postades av 2006-08-18 08:04:03 - Jenny Månsson

Det kan inte bli en loop i accessen. Däremot kanske datan är låst när du ska köra den här frågan så att frågan väntar och väntar på sin tur. Eller så har du gjort någon loop kodmässigt i ditt program. Testa att köra frågan direkt i access eget frågefömster för att se att du får rätt data.

Kan du visa hela din metod där du skriver denna sql fråga?


Svara

Sv:En speciell order by...

Postades av 2006-08-18 13:30:38 - Patrik Wårdmark

Yes, det funkar nu! Det måste varit nåt mysko med IIS på min testdator igår.

Stort tack för hjälpen!


Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

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 569 170
27 953
271 705
717
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