31. marts 2009 - 12:24Der er
6 kommentarer og 1 løsning
DISTINCT sql problem
jeg har sql linien
SELECT DISTINCT fabrikat FROM tooltabel
skulle gerne give mig en liste af fabrikat navne hvor alle gengangere er frasorterede , men distinct brokker sig fordi fabrikat er en text (det er alle felter i tooltabel i øvrigt)
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Er det virkelig nødvendigt at benytte text-typen for alle kolonner?? Hvad er det for data du har liggende i de felter?
Hvilken database er det?
Det ville måske fungere, at konvertere data til en mere håndterbar type, f.eks. varchar, men det kræver at dataformatet tillader dette...
Eksempelvis:
SELECT DISTINCT CAST(fabrikat AS varchar(50)) FROM tooltabel
Dog vil jeg mene, at det er et tegn på et designproblem, hvis du benytter text-typen til alle kolonner (det kan godt være det er nødvendigt i dit tilfælde - det virker bare lidt atypisk)...
Text datatypen bør kun bruges, når du har en lang tekst. Hvis du har navnet på et-eller-andet, bør man bruge varchar eller nvarchar. At misbruge Text datatypen, ender med at give dig EKSTREME performance problemer. Ud over dette, virker de fleste text-functions ikke på Text kolonner, som du jo selv har erfaret.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.