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


Sortera textfält i "sifferordning"

Postades av 2002-02-04 16:20:41 - Ulf Elfving, i forum databaser, Tråden har 5 Kommentarer och lästs av 772 personer

Om jag har ett textfält i db som oftast innehåller siffor (tal), men kan innehålla siffra + text oxå.
Kan man sortera i "sifferordning" ( 1, 2, 7 ,8, 11, 12, 22, 23) så man inte får resultatet: 1, 11, 12, 2, 22, 23, 7 , 8 ...
Man kan ju lägga en nolla framför alla eniffriga tal, men skulle helst vilja slippa det...


Svara

Sv: Sortera textfält i "sifferordning"

Postades av 2002-02-05 09:45:09 - Ulf Magnusson

Hej.

Så här skulle det kunna se ut i en Oracle databas.
Vet inte om translate finns i andra databaser ?

Det som görs nedan är att konvertera A-Ö till nollor med translate
och sedan göra om det till nummerformat.
En fara med detta är att to_number funktionen krashar om
det kommer en endaste litet tecken som den inte kan konvertera
till ett nummeriskt värde.

SELECT name
FROM min_tabell
ORDER BY
TO_NUMBER(
TRANSLATE(UPPERname),
'ABCDEFGHIJKLMNOPQRSTUVWXYZÅÄÖ',
'00000000000000000000000000000'
)
), name

/Uffe


Svara

Sv: Sortera textfält i "sifferordning"

Postades av 2002-02-05 10:01:10 - Johan Idstam

Om det räcker med att få med siffervärdena kan man göra så här i SQL-server

select strings from
(select strings, isnumeric(strings) isNum from test) as tabellen
where isNum=1
order by convert(int, strings)


strings är ett fält i min tabell

/johan/


Svara

Sv: Sortera textfält i "sifferordning"

Postades av 2002-02-05 10:05:39 - Ulf Elfving

Det är sqlserver (vet inte om det finns nån fix ala oracle...)
Jag vill ha hela fältet med och inte enbart siffrorna, men jag tror det lutar åt att få köra en update på alla poster...
Tack för svaren i alla fall


Svara

Sv: Sortera textfält i "sifferordning"

Postades av 2002-02-05 13:16:19 - Christoffer Hedgate

Om du nöjer dig med att få de rader som innehåller mer än siffror placerade sist i sorteringen så kan du köra följande:

SELECT strings FROM tabell
ORDER BY CAST(CASE ISNUMERIC(b) WHEN 1 THEN strings ELSE 2147483647 END AS INT)

Om du vill ha dem på rätt plats (dvs den plats som siffrorna i strängen är) så får du bygga en funktion som kör REPLACE på alla tecken i strängen, och byter ut alla icke-numeriska tecken till en tom sträng.

Dock tycker jag du ska akta dig för att köra en massa funktioner i en order by, eftersom det lär bli table scan då. Bättre att isf ha en extra kolumn av typen int där du lagrar sifferdelen av alla strängarna, och sedan köra order by på den istället, dessutom med ett lämpligt index på den.


Svara

Sv: Sortera textfält i "sifferordning"

Postades av 2002-02-05 13:45:16 - Ulf Elfving

Tack CH, blir not det senare alternativet att dela upp kolumnen i två och köra numeriskt i den ena och alfa i den andra


Svara

Nyligen

  • 17:03 Getmancar your go-to carsharing
  • 14:07 Games
  • 17:54 Vegastars New Zealand
  • 16:56 Verde Casino Danmark
  • 13:54 Vegastars: Top Australian Online C
  • 21:28 Chicken Road Casino Game
  • 21:21 1xBet Promo Code 2025
  • 18:37 Remove the bumper in AUDI

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 988
27 965
271 785
1 172
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