order by IP

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • order by IP

    Guden zusammen,

    habe gerade ein Problem mit einem SQL Statement, welches mir IP's "vernüftig" sortieren soll.

    Habe das gefühl das es eher einem Rand(); nahe kommt...


    Code:
    SELECT
    	`ip`.`id` AS `ipID`,
    	`ip`.`ip` AS `ipIP`,
    	`ip`.`hostname` AS `ipHostname`,
              
    	`netz`.`id` AS `netzID`,
    	`netz`.`vlan_id` AS `netzVLANID`
    
    FROM `sysadmin`.`ip`
    	
    LEFT JOIN
    	`sysadmin`.`netz`
    ON
    	(`ip`.`netz_id` = `netz`.`id`)
    	
    ORDER BY
    	BIN(SUBSTRING_INDEX(`ip`.`id`,".",1)),  
    	BIN(SUBSTRING_INDEX(SUBSTRING_INDEX(`ip`.`id`,".",2),".",-1)), 
    	BIN(SUBSTRING_INDEX(SUBSTRING_INDEX(`ip`.`id`,".",3),".",-1)), 
    	BIN(SUBSTRING_INDEX(SUBSTRING_INDEX(`ip`.`id`,".",4),".",-1)) 
    	
    WHERE
    	`netz`.`vlan_id` = '1'
    AND
    	`ip`.`server_id` = '0';
    dabei kommt dann soetwas raus:

    Code:
    ...
    19.8.0.61
    10.8.0.40
    10.8.0.42
    10.8.0.44
    10.8.0.48
    10.8.0.52
    10.8.0.30
    10.7.0.64
    10.7.0.129
    10.7.0.130
    10.7.0.131
    10.7.0.132
    10.7.0.142
    10.7.0.144
    10.7.0.145
    10.7.0.150
    10.7.0.10 
    10.7.0.20
    10.7.0.21
    10.7.0.11
    10.7.0.48
    10.7.0.50
    10.7.0.13
    10.7.0.14 
    10.7.0.61
    10.7.0.63 
    ...

    Was geht hier vor sich?
    Last edited by Skaschy; 29-08-2007, 16:35.

  • #2
    PHP Code:
    $sql "SELECT ip FROM table ORDER BY INET_ATON(ip)"
    http://dev.mysql.com/doc/refman/5.0/...tion_inet-aton

    Gruss

    tobi
    Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

    [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
    Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

    Comment


    • #3
      Besten dank ! Das war die, sogar etwas elegantere, Lösung!

      Comment


      • #4
        Das war die, sogar etwas elegantere, Lösung!
        Warum das Rad neuerfinden, wenn es bereits fertige Funktionen dafür gibt ?

        Gruss

        tobi
        Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

        [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
        Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

        Comment


        • #5
          Wusste ja bis dato nicht das diese Fkt. existiert

          Comment


          • #6
            Wusste ja bis dato nicht das diese Fkt. existiert
            Ich auch nicht, aber Google wusste es mit "ipadressen+sortieren+mysql"
            Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

            [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
            Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

            Comment

            Working...
            X