|  | 		    
					
        
         
          
         
	
          | |  | MySQL, avanceret distinct? (i hvert fald f~ Fra : Niels Andersen
 | 
 Dato :  06-07-01 20:34
 | 
 |  | Jeg har en tabel hvor nøglen er en streng. Faktisk er det to (i fremtiden
 måske flere) ord, sammensat med en underscore (_), fx. sådan her:
 "key1_key2".
 Det fungerer ganske glimrende, men det er vist lidt uheldigt
 database-design. Jeg har nu i hvert fald det problem, at jeg skal have en
 liste over første del. Altså, hvis man fjerner alt fra og med første
 underscore, og så skal jeg have en liste uden dubletter. Kan det overhovedet
 lade sig gøre?
 
 --
 Mvh.
 
 Niels Andersen
 
 
 
 
 
 |  |  | 
  Jonas Delfs (07-07-2001) 
 
	
          | |  | Kommentar Fra : Jonas Delfs
 | 
 Dato :  07-07-01 15:08
 | 
 |  | 
 
            "Niels Andersen" <niels-usenet@myplace.dk> skrev i en meddelelse
 news:lpo17.5032$c63.500836@news000.worldonline.dk...
 > Jeg har en tabel hvor nøglen er en streng. Faktisk er det to (i fremtiden
 > måske flere) ord, sammensat med en underscore (_), fx. sådan her:
 > "key1_key2".
 > Det fungerer ganske glimrende, men det er vist lidt uheldigt
 > database-design. Jeg har nu i hvert fald det problem, at jeg skal have en
 > liste over første del.
 Pseudokode:
 SELECT DISTINCT SUBSTRING(feltnavn, LOCATE('_', feltnavn), LOCATE('_',
 feltnavn, LOCATE('_', feltnavn))) AS key1 FROM tabel
 Måske?
 --
 Mvh. Jonas Delfs, http://delfs.dk e72bd3e51a7937c87d28b85d677a97b2
            
             |  |  | 
  Niels Andersen (08-07-2001) 
 
	
          | |  | Kommentar Fra : Niels Andersen
 | 
 Dato :  08-07-01 09:09
 | 
 |  | "Jonas Delfs" <jonas@nospam.delfs.dk> wrote in message
 news:9i74tk$5qc$1@sunsite.dk...
 > > Jeg har en tabel hvor nøglen er en streng. Faktisk er det to (i
 fremtiden
 > > måske flere) ord, sammensat med en underscore (_), fx. sådan her:
 > > "key1_key2".
 > > Det fungerer ganske glimrende, men det er vist lidt uheldigt
 > > database-design. Jeg har nu i hvert fald det problem, at jeg skal have
 en
 > > liste over første del.
 
 > Pseudokode:
 > SELECT DISTINCT SUBSTRING(feltnavn, LOCATE('_', feltnavn), LOCATE('_',
 > feltnavn, LOCATE('_', feltnavn))) AS key1 FROM tabel
 
 Jeg skal snart have læst den manual igennem, der er vist meget guf... :)
 Men tak for inspirationen, dette bliver vist løsningen:
 
 SELECT DISTINCT SUBSTRING_INDEX(felt, '_', 1)  AS key1 FROM tabel;
 
 --
 Mvh.
 
 Niels Andersen
 
 
 
 
 |  |  | 
 |  |