Este artículo explica principalmente el uso y el significado de las funciones comunes de mysql, incluidas las funciones de cadena, funciones numéricas, funciones de fecha y funciones de proceso.
1. Funciones de cadena
① CONCAT(S1,S2,...,Sn): Concatenar S1 a Sn en una cadena de caracteres;
② LOWER(Str): Convierte todas las cadenas Str a minúsculas;
③ UPPER(Str): Convierte la cadena Str a mayúsculas;
④ LPAD(Str,n,pad): Rellene el lado izquierdo de la cadena Str con el pad de cadena para alcanzar la longitud de n caracteres;
⑤ RPAD(Str,n,pad): Rellene el lado derecho de la cadena Str con el pad de cadena para alcanzar la longitud de n caracteres;
⑥ TRIM(Str): elimina el espacio en la cabeza y la cola del personaje para girar;
⑦ SUBCADENA(Str,Start,Len): intercepta la cadena de caracteres Str desde el inicio hasta la longitud de Len.
2. Funciones numéricas
① CEIL(X): Redondeo hacia arriba;
② PISO(X): redondear hacia abajo;
③ MOD(X,Y); devuelve el módulo de X/Y;
④ RAND(): devuelve un número aleatorio entre 0 y 1;
⑤ ROUND(X,Y): Encuentre el valor redondeado de X y mantenga Y lugares decimales;
Ejemplo: Genere un código de verificación aleatorio de 6 dígitos:
3. Función de fecha
① CURDATE(): devuelve la fecha actual;
② CURTIME(): devuelve la hora actual;
③ NOW(); devuelve la fecha + hora actual;
④ AÑO(fecha): Obtener el año de la fecha especificada;
⑤ MES(fecha): Obtener el mes de la fecha especificada;
⑥ DÍA(fecha): Obtener el número de días de la fecha especificada;
⑦ DATE_add(date, INTERVEL expr type): devuelve el valor de tiempo después de una fecha/hora especificada más un valor de expr;
⑧ DATEDIFF(fecha1, fecha2): devuelve el número de días entre dos fechas;
4. Función de proceso
① SI (valor, t, f): si la expresión de valor es verdadera, devuelve t, de lo contrario, devuelve;
② IFNULL(valor1, valor2): Si valor1 no está vacío, devuelve valor1, de lo contrario, devuelve valor2;
③ CASO CUANDO [val1] ENTONCES [res1]…ELSE [DEFAULT] END: Si val1 es verdadero, el valor de retorno es res1,… de lo contrario, el valor de retorno es predeterminado; hay dos tablas, una tabla de información del estudiante estudiante y una tabla de
puntuación sc, la tabla es la siguiente, es necesario juzgar que el puntaje superior a 80 es excelente, el puntaje superior a 60 es aprobado y los demás son reprobados: tabla de estudiantes: tabla de puntajes: escriba la declaración sql de la
siguiente
manera
:
select s.*, (case when sc.score>80 then '优秀' when sc.score>60 then '及格' else '不及格' end )as 'level' from student as s
left join sc on s.SId = sc.SId;
El resultado de la ejecución es:
④ CASE [expr] WHEN [val1] THEN [res1]...ELSE [defalut] END: Si el valor de expr es igual a val1, devuelve res1, de lo contrario devuelve el valor por defecto.