La sintaxis y MySQL base de datos de ABM: https://blog.csdn.net/sabstarb/article/details/105059672
directorio
En primer lugar, la deduplicación
Dos, donde las condiciones de
En tercer lugar, la consulta Reino mesa
En cuarto lugar, ya que la conexión
En quinto lugar, la clasificación y paginación
seis subconsultas
Siete funciones, comúnmente utilizados
八, grupo por
En primer lugar, la deduplicación
Echa un vistazo a la eliminación de parte de selección repetida declaración (palabra clave distinta);
Declaración: Seleccionar formulario [distintas] nombre del campo del nombre de la tabla
例: seleccione el nombre distinto de las personas;
Dos, donde las condiciones de
Papel: Devuelve los resultados especificados partir de la consulta
1, operadores lógicos
operadores | gramática | descripción |
---|---|---|
y 和 && | Resultado> 1 y el resultado <4 ===> resultado> 1 && resultado <4 | Y la lógica, se cumplen dos condiciones, es cierto |
o 和 || | Resultado> 1 o resultar <4 ===> resultado> 1 || resultar <4 | O lógica, la satisfacción de una condición es verdadera |
y no! | No result = 2 ===>! (Resultado = 2) | Negado, resultado no es igual a 2, es cierto |
Y la operación: Todas las condiciones se deben cumplir
O la operación: sólo tiene que cumplir una de las condiciones a
Invertir: Cuando se cumple la condición, la parte de retorno no satisface las condiciones (recuerde usar paréntesis ()!)
2, operadores de comparación
operadores | gramática | descripción |
---|---|---|
es nulo | nombre es nula | Consulta de nombres es datos nulos |
No es nulo | nombre no es nulo | Consulta de nombres no es nula de datos |
en medio y… | Identificación entre 2 y 4 | Entre consulta de datos Identificación del 2-4 |
como (consulta difusa) | nombre como b (hay dos tipos de modificadores y _%) | Matching, si hay un nombre de datos b, un modificador puede ser una coincidencia parcial |
en | nombre en (a1, a2, a3, a4 ...) (coincidencia exacta) | Coincidente, a1 a a4 de datos existe en nombre vuelve verdadera, exacta de los partidos |
es nula y no nula es:
el entre ... y ...: datos de consulta entre las edades de 20-40 años de edad
como:% (0 para representar cualquier carácter)
% Con siempre que los datos no ve la longitud de la misma, tales como '%% 2', 2' será detectado con una consulta larga.
como: _ (representa un personaje)
_ Con los datos, un carácter no hará caso de la consulta, más allá de un personaje no coincidirá, tales como (Wang _), siempre y cuando hay dos personajes a la parte de atrás, no va a coincidir.
en: pluralidad coincidencia exacta de datos, equivalente a varias consultas.
En tercer lugar, la consulta Reino mesa
UNIRSE
tabla de contingencia operación de combinación
operativo | descripción |
---|---|
unir internamente | Si hay al menos una coincidencia en la tabla, devuelve OK |
izquierda se unen | En la tabla de la izquierda como referencia, incluso si no hay ninguna coincidencia a la tabla de la derecha, la mesa ha dejado, es la salida |
derecho de unirse | En la tabla de la derecha como referencia, incluso si no hay ninguna coincidencia en la tabla izquierda, tabla de la derecha también hay salida |
la combinación interna: (igual a dos datos de la tabla adquiridos en las condiciones filas)
a la izquierda del Ingreso: una tabla de referencia se ha dejado, el valor de adquisición, la tabla de datos incluso si los dos no son iguales, la tabla de datos sujetos a la izquierda.
derecho de unirse a: tener la tabla de la derecha como referencia, obtener el valor, incluso si las dos tablas de datos no son iguales a los datos objeto de la tabla de la derecha.
unirse en: consulta de combinación
donde: consulta Equivalente
y donde en el uso (sacrificio eficiente no puede satisfacer las condiciones de datos) en combinación:
-
1, donde se crea en una tabla temporal, una operación de procesamiento lista enlazada
-
2, pero la tabla temporal se ha completado, donde luego filtrar los datos, se ha llevado a la aparición de los ideales.
Pero cuando en y y, o ser utilizados en combinación, el efecto obtenido no es satisfactorio para (o no se admite en la unión):
-
1, y se filtra unen en una tabla temporal, los datos que sean limitativos
-
2, cuando la unión, y las restricciones de proceso de conexión de datos, pero debido a que los datos han sido procesados, no todos los resultados a juego en un datos nulos.
En cuarto lugar, ya que la conexión
Núcleo: Una tabla es dividida en dos mesas.
Dividir: De acuerdo con un ID de subcuenta, los sujetos obtener los padres, los demás subcuentas, para los padres subclase de id = ID.
En quinto lugar, la clasificación y paginación
1, la clasificación Sintaxis: orden por el campo (el ASC (ascendente) o DESC (descendente))
Ejemplo: para ver los datos en orden descendente.
select p.pid,s.subjectname as ‘父科目',p.subjectname as ‘子科目’
from subject as s inner join subject as p
on s.subjectid = p.pid order by p.pid desc;
2, sentencia SQL en el último límite de páginas
El subíndice MySQL desde cero por defecto, Oracle desde el principio.
Sintaxis: limitar el índice de consulta, datos de visualización (el número de visualización de datos de página) (página de la página actual correspondiente);
-
página Web de consulta del método general de cálculo (se inicia índice visualización de la página web en 0): subíndice de consulta (en esta página) * visualización de datos, visualización de datos;
-
Una consulta la página web general calculado (pestaña de la página de inicio del índice de visualización 1) :( índice de consulta (en esta página) -1) * visualización de datos, los datos de visualización;
Ejemplo: los datos después de la finalización de paginación descendente, 5Records de datos
select p.pid,s.subjectname as ‘父科目',p.subjectname as ‘子科目’
from subject as s inner join subject as p
on s.subjectid = p.pid order by p.pid desc limit 0,5;
seis subconsultas
Esencia: En anidar en donde una instrucción de selección.
1, sub-consultas por un pequeño número de mesas, consulta de datos más tablas (tablas de consulta en los datos deben estar en la memoria).
2, el campo presente tabla de otras tablas (por ejemplo: ID) se puede lograr, pero sólo adquiere los campos correspondientes en esta tabla (por ejemplo: ID), no otros campos de otras tablas.
例:
select peopleid,name,roleId(其他表的ID)from people(只能查询people存在的数据)
where roleId in (select roleId from role where roleId >0);
Sub por roleId y de la tabla personas studentID consultas de
personas datos de la tabla:
trabajo de consulta como un empleado ordinario, datos mujer de género:
subconsulta aunque sencillo, pero no ligado consulta de tabla que se pueden consultar los datos de otras tablas (pero usando unirse a mi personal Estados casi sentir y búsqueda en la tabla), es diferente.
Siete funciones, comúnmente utilizados
1, tiempo de
función | descripción |
---|---|
seleccione fecha_actual () | Obtener la hora actual (fecha) |
seleccione CURDATE () | Obtener la hora actual (fecha) |
seleccione ahora () | (Mes, día, minutos y segundos) para obtener la hora actual |
seleccione LocalDate () | (Fecha hora local durante los minutos y segundos) para obtener la hora local |
seleccione sysdate () | (minutos y segundos el tiempo cuando la fecha del sistema) Obtener la hora del sistema |
selecto años (ahora) | Obtener el año en curso |
Seleccionar el mes (ahora) | Obtener el mes en curso |
Seleccione el día (en la actualidad) | Obtener la fecha actual |
seleccionar horas (ahora) | Obtener la hora actual |
seleccione minuto (ahora) | Obtener el minuto actual |
seleccionar segundos (ahora) | Obtener el número actual de segundo |
2, el sistema de
función | descripción |
---|---|
seleccione system_user () | Obtener el usuario actual |
seleccione un usuario () | Obtener el usuario actual |
seleccione la versión () | Obtener el número de versión actual |
3, las funciones de agregado comunes
función | descripción |
---|---|
contar | contar |
suma | sumadora |
avg | media |
máx | máximo |
me | mínimo |
contar con la eficiencia: recuento (nombre de la columna)> count (1)> count (*)
count (nombre de la columna): consulta sólo la columna especificada, sin hacer caso nulo.
count (1): Sólo la primera columna de la consulta, no ignore nula.
count (*): Cada fila de la consulta, no ignore nula.
select sum(列名) [as 总分] from 表名
select avg(列名) [as 平均分] from 表名
select max(列名) [as 最高分] from 表名
select min(列名) [as 最低分] from 表名
4, el cifrado MD5
cifrado md5 es un medio de cifrado para cifrar los datos en la inserción de datos, para los datos de verificación encriptada (datos cifrados no cambiarán cada vez que la misma codificación de datos, los datos se cifran el mismo valor), Java es generalmente insertado en el cifrada.
insert into user(userid,username,password) values('2','wangwu',mad5('13579'));
八, Grupo de
1, el grupo de por nombres de columna: nombre de la columna mediante la agrupación, en la siguiente dónde.
- será el grupo especificado por los mismos datos de combinación de la columna, pero de una pluralidad de ID de célula, claramente el uso de, por lo que un error directo consulta ID.
grupo mediante una operación y la función de polimerización:
2, con: las condiciones de filtro secundaria, y con el grupo al filtrar el grupo de datos por el retorno, conforman donde la función no se puede utilizar en conjunción con la polimerización.
seleccionar el comunicado completo:
selete [all(默认) | ditinct(去重)]
(*(全部),指定列名(可以有多个)[as 别名]) from (表名 [as 别名])
[(inner | left | right ) join (表名 [as 别名]) [on ...条件]] ===>联合查询
[where ...条件]
[group by 列名] ===> 根据列名进行分组,数据相同为一组进行计数)
[having ...次要条件] ===>group by一起,过滤group by返回的数据,弥补where不能和聚合函数联合使用的不足
[order by ( asc (升序) | desc (降序) )]
[limit 查询页码(当前页),展示数据个数]