DEFAULT(
          col_name)
Retorna el valor por defecto para una columna de tabla. A partir de MySQL 5.0.2, retorna un error si la columna no tiene valor por defecto.
mysql> UPDATE t SET i = DEFAULT(i)+1 WHERE id < 100;
            FORMAT(
          X,D)
            Formatea el número X a un
            formato como '#,###,###.##', redondeado a
            D decimales, y retorna el
            resultado como una cadena. Si D
            es 0, el resultado no tiene punto decimar
            o parte fraccional.
          
mysql> SELECT FORMAT(12332.123456, 4);
        -> '12,332.1235'
mysql> SELECT FORMAT(12332.1,4);
        -> '12,332.1000'
mysql> SELECT FORMAT(12332.2,0);
        -> '12,332'
            GET_LOCK(
          str,timeout)
            Intenta obtener un bloqueo con un nombre dado por la cadena
            str, con un tiempo máximo de
            timeout segundos. Retorna
            1 si el bloqueo se obtiene con éxito,
            0 si el intento supera el tiempo máximo
            (por ejemplo, debido a que otro cliente haya bloqueado el
            nombre préviamente), o NULL si ocurre un
            error (tal como quedarse sin memoria o que el flujo acabe
            con mysqladmin kill). Si tiene un bloqueo
            obtenido con GET_LOCK(), se libera cuando
            ejecuta RELEASE_LOCK(), ejecuta un nuevo
            GET_LOCK(), o su conexión termina
            (normal o anormalmente).
          
            Esta función puede usarse para implementar bloqueos de
            aplicaciones o simular bloqueo de registros. Los nombres se
            bloquean en el servidor. Si un nombre lo ha bloqueado un
            cliente, GET_LOCK() bloquea cualquier
            petición de otro cliente para bloquear el mismo nombre.
            Esto permite a los clientes que se pongan con un nombre de
            bloqueo dado a usar el nombre para realizar advertencias de
            bloqueo cooperativo. Pero tenga en cuenta que esto permite a
            un cliente que no esté entre el conjunto de clientes
            cooperativos bloquear un nombre, de forma deliverada o no, y
            evitar que ninguno de los clientes cooperativos puedan
            bloquear dicho nombre. Una forma de reducir la probabilidad
            que esto pase es usar nombres de bloqueo especificos de
            bases de datos o de aplicación. Por ejemplo, use nombres de
            bloqueo de la forma db_name.str o
            app_name.str.
          
mysql> SELECT GET_LOCK('lock1',10);
        -> 1
mysql> SELECT IS_FREE_LOCK('lock2');
        -> 1
mysql> SELECT GET_LOCK('lock2',10);
        -> 1
mysql> SELECT RELEASE_LOCK('lock2');
        -> 1
mysql> SELECT RELEASE_LOCK('lock1');
        -> NULL
            Tenga en cuenta que la segunda llamada a
            RELEASE_LOCK() retorna
            NULL debido a que el bloqueo
            'lock1' se libera automáticamente por la
            segunda llamada GET_LOCK() .
          
            INET_ATON(
          expr)
Dada la representación de cuatros números separados por puntos de una dirección de red como cadena de caracteres, retorna un entero que representa el valor numérico de la dirección. Las direcciones pueden ser direcciones de 4 o 8 bytes .
mysql> SELECT INET_ATON('209.207.224.40');
        -> 3520061480
            El número generado siempre tiene orden de bytes de red.
            Para el ejemplo mostrado anteriormente, el número se
            calcula como 209*256^3 + 207*256^2 + 224*256 +
            40.
          
            INET_ATON() también entiende direcciones
            IP de forma corta:
          
mysql> SELECT INET_ATON('127.0.0.1'), INET_ATON('127.1');
        -> 2130706433, 2130706433
            NOTA: Cuando almacene
            valores generados por INET_ATON(), se
            recomiendoa que use una columna INT
            UNSIGNED. Si usa una columna
            INT (con signo), los valores
            correspondientes a direcciones IP para las que el primer
            octeto es mayor que 127 se truncan a 2147483647 (esto es, el
            valor retornado por
            INET_ATON('127.255.255.255')). Consulte
            Sección 11.2, “Tipos numéricos”.
          
            INET_NTOA(
          expr)
Dada una dirección de red numérica (4 o 8 bytes), retorna la representación de puntos de la dirección como cadena.
mysql> SELECT INET_NTOA(3520061480);
        -> '209.207.224.40'
            IS_FREE_LOCK(
          str)
            Chequea si el nombre de bloqueo
            str está libre para uso (esto
            es, no bloqueado). Retorna 1 si el
            bloqueo está libre (nadie lo usa para bloquear),
            0 si el bloqueo está en uso, y
            NULL en errores (tales como argumentos
            incorrectos).
          
            IS_USED_LOCK(
          str)
            Chequea si el nombre de bloqueo
            str está en uso (esto es,
            bloqueado). Si es así, retorna el identificador de
            conexión del cliente que tiene el bloqueo. De otro modo,
            retorna NULL.
          
            MASTER_POS_WAIT(
          log_name,log_pos[,timeout])
            Esta función es útil para control de sincronización de
            maestro/ esclavo. Bloquea hasta que el esclavo ha leído y
            aplicado todas las actualizaciones hasta la posición
            especificada en el log del maestro. El valor retornado es el
            número de eventos logueados que tiene que esperar para
            llegar a la posición especificada. La función retorna
            NULL si el flujo esclavo SQL no está
            arrancado, la información maestra del esclavo no está
            inicializada, los argumentos son incorrectos, u ocurre un
            error. Retorna -1 si se agota el tiempo
            de espera. Si el flujo SQL esclavo para mientras
            MASTER_POS_WAIT() está esperando, la
            función retorna NULL. Si el eslavo pasa
            la posición especificada, la función retorna
            inmediatamente.
          
            Si un valor timeout se
            especifica, MASTER_POS_WAIT() para de
            esprar cuando pasan timeout
            segundos. timeout debe ser
            superior a 0; un cero o timeout
            negativo significa que no hay timeout.
          
            RELEASE_LOCK(
          str)
            Libera el bloqueo nombrado por la cadena
            str obtenida con
            GET_LOCK(). Retorna 1
            si el bloqueo se libera, 0 si el bloqueo
            no estaba bloqueado por este flujo (en cuyo caso el bloqueo
            no se libera), y NULL si el bloqueo
            nombrado no existía. El bloqueo no existe si nunca se
            obtuvo por una llamada a GET_LOCK() o si
            había sido liberado préviamente.
          
            El comando DO es conveniente para usar
            con RELEASE_LOCK(). Consulte
            Sección 13.2.2, “Sintaxis de DO”.
          
            UUID()
          
Retorna un Universal Unique Identifier (UUID) (Identificador Único Universal) generado según la “DCE 1.1: Remote Procedure Call” (Apéndice A) CAE (Common Applications Environment) Especificaciones publicadas por The Open Group en Octubre 1997 (Número de Documento C706).
            Se designa un UUID como número que es único globalmente en
            espacio y tiempo. Dos llamadas a UUID()
            generan dos valores distintos, incluso si estas llamadas se
            realizan en dos máquinas separadas y no están conectadas
            entre ellas.
          
            Un UUID es un número de 128 bits representado por una
            cadena de cinco números hexadecimales en formato
            aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee:
          
Los primeros tres números se generan de un valor temporal.
El cuarto número preserva unicidad temporal en caso de que el valor temporal pierda moniticidad (por ejemplo, debido al cambio horario).
El quinto número es un número IEEE 802 de nodo que proporciona unicidad espacial. Un número aleatorio se sustituye si el último no está disponible (por ejemplo, debido a que la máquina no tenga tarjeta Ethernet, o no sabemos encontrar la dirección hardware de una interfaz en el sistema operativo). En este caso, la unicidad espacial no se puede garantizar. Sin embargo, una colisión debe tener una probabilidad muy baja.
Actualmente, la dirección MAC de una interfaz se tiene en cuenta sólo en FreeBSD y Linux. En otros sistemas operativos, MySQL usa un número generado aleatoriamente de 48 bits.
mysql> SELECT UUID();
        -> '6ccd780c-baba-1026-9564-0040f4311e29'
            Tenga en cuenta que UUID() no funciona
            todavía con replicación.
          
Ésta es una traducción del manual de referencia de MySQL, que puede encontrarse en dev.mysql.com. El manual de referencia original de MySQL está escrito en inglés, y esta traducción no necesariamente está tan actualizada como la versión original. Para cualquier sugerencia sobre la traducción y para señalar errores de cualquier tipo, no dude en dirigirse a mysql-es@vespito.com.

