Desarrollo de bases de datos de recursos de Internetprácticamente no difiere de las bases de datos estándar desarrolladas en MS SQL SERVER. Normalmente, para dichos recursos, se usa el lenguaje MY SQL, aunque también se puede usar para desarrollar productos de software estándar para uso local. Pero este artículo no trata sobre esto.
A menudo, cuando se trabaja con bases de datos en cada uno de losidiomas es la tarea de hacer una selección de datos para el resultado en una variedad de informes, gráficos, etc. Como regla general, al implementar tales tareas, es necesario usar no una sino varias tablas, combinándolas en una consulta, lo que complica considerablemente su construcción. Al mismo tiempo, es necesario tener en cuenta cómo se generarán los datos, cómo se "levantarán" las tablas y qué resultado será el más aceptable para el programador. Para resolver estos problemas, una de las construcciones estándar del lenguaje MySQL es Join.
Lenguajes de desarrollo de bases de datos, no importa qué exactamenteeste es el idioma, las palabras estándar de los diccionarios en inglés se utilizan como base (por eso, siempre que sepa inglés, será mucho más fácil para usted trabajar con tablas). Para implementar la conexión de tablas en la muestra, se usa la misma palabra: Join. En el lenguaje de programación de la base de datos se usa My SQL. La traducción de esta palabra oficial es exactamente la misma que en el idioma en sí: "unificación".
Interpretando la construcción de MySQL-Join, ycualquiera de ellos será exactamente igual. Si desciframos el propósito del diseño, es decir, el esquema de su operación, obtenemos el siguiente significado: las construcciones permitirán recopilar los campos necesarios de diferentes tablas o consultas anidadas en una muestra.
Si el programador necesita recolectar una muestra devarias tablas y él sabe qué campos clave en ellos y qué tipo de datos se necesitan para el informe, luego puede utilizar uno de los diseños básicos de la unión para lograr el resultado deseado. Las construcciones básicas (para unir mesas) son cuatro:
Dependiendo de la tarea, cada uno de los diseños estándar dará resultados diferentes, lo que le permitirá recibir informes sobre diferentes parámetros en poco tiempo.
Antes de comenzar, por ejemplo, consideremecanismos para trabajar con federaciones de datos, vale la pena preparar varias tablas con las que seguiremos trabajando. Esto ayudará a mostrar visualmente todos los principios de los operadores, además, por lo tanto, los principiantes son más fáciles de aprender todos los principios básicos de las tablas de programación.
La primera tabla describirá algunos elementos que una persona encuentra constantemente a lo largo de su vida.
En la segunda tabla, describimos algunas propiedades de los objetos de la primera tabla, de modo que podamos trabajar con ellos en el futuro.
En general, dos tablas serán suficientes para mostrar su trabajo con el ejemplo. Ahora puede comenzar a considerar nuestros diseños.
Al usar el constructo MySQL - Join Ineervale la pena considerar algunas de sus características. Este diseño le permite seleccionar de ambas tablas solo aquellos registros que están tanto en la primera como en la segunda tabla. ¿Cómo funciona? En la primera tabla tenemos la clave maestra - ID, que indica el número de serie de registros en la tabla.
Al crear la segunda tabla, la misma claveUtilizado como número de serie, se puede ver un ejemplo en las figuras. Cuando selecciona datos, el operador Seleccionar solo determinará los registros cuyos números de secuencia son iguales, lo que significa que existen tanto en la primera como en la segunda tabla.
Cuando se usa la construcción,qué datos es necesario recibir El error más común, especialmente para un programador principiante de bases de datos, es el uso irracional e incorrecto del diseño de Inner Join. Como ejemplo, la combinación interna de MySQL, puede considerar una secuencia de comandos que nos regresará a partir de la información de las tablas previamente descrita y completa sobre los objetos y sus propiedades. Pero puede haber varias formas de usar la estructura. En este sentido, My SQL es un lenguaje muy flexible. Por lo tanto, puede considerar ejemplos del uso de la combinación interna de MySQL.
Combinar tablas sin especificar ningún parámetro. En este caso, obtenemos el resultado de dicho plan:
Si indicamos a través de la palabra Utilidad Usando, esoEs necesario tener en cuenta las claves principales de los registros en las tablas, el resultado de la muestra cambiará radicalmente. En este caso, obtenemos una muestra que devolverá solo aquellas filas que tienen las mismas teclas principales.
Una tercera opción también es posibleconstructs, cuando en la consulta la palabra "on" se usa para especificar los campos a los que se deben unir las tablas. En este caso, la muestra devolverá los siguientes datos:
Si consideramos otra forma de combinar tablas utilizando el constructo de unión de MySQL, puede ver la diferencia en los datos que se generan. Este mecanismo es la construcción de la izquierda.
Usando la construcción Izquierda de Unión MySQL tiene algunas características y, como Inner, requiere una comprensión clara del resultado que se obtendrá.
En este caso, todos los registros serán seleccionados primerode la primera tabla, y más tarde se adjuntarán a los registros de la segunda tabla de propiedades. En este caso, si hay una entrada en la primera tabla, por ejemplo, "stool", y en la segunda tabla no hay propiedades para ella, entonces la declaración Left mostrará valor nulo frente a este registro, que le dice al programador que no hay signos para este tipo de objeto .
El uso de este diseño le permitirá determinar qué campos o, por ejemplo, los productos de la tienda no están expuestos al precio, al período de garantía, etc.
Considerar en la práctica al operadorLeft Join MySQL usa las tablas descritas anteriormente. Por ejemplo, debe seleccionar la lista completa de productos que se encuentran en la tienda y verificar cuáles de ellos no están marcados con signos o propiedades. En este caso, la muestra mostrará todos los productos en la pantalla, y para aquellos que no tengan una propiedad, se mostrarán los valores vacíos.
Como parámetro, una unión puede incluir no solo los campos a los que desea conectar las tablas, sino que también puede incluir el operador WHERE CLASE.
Por ejemplo, considere una secuencia de comandos que deberíaDevuélvanos solo aquellos registros para los cuales no se muestra ningún signo. En este caso, en la construcción de unión, debe agregar una declaración de condición y especificar qué exactamente desea devolver como resultado.
Cuando se utiliza en MySQL Únete - ¿Dónde se debe entender claramente que muestra sólo aquellos registros que incluyen la condición anterior, y la muestra será entonces como sigue:
Tales solicitudes le permiten muestreardatos específicos relativos a la condición de programador seleccionado. Tales condiciones pueden indicar varias posibles durante la actualización de los parámetros de selección de datos unidos con mesas.
La construcción Join es, de hecho, universal. Permite no solo crear una variedad de muestras, sino también incluir en las solicitudes de una a varias tablas, ingresar condiciones adicionales en la muestra. El diseño también se puede usar para otras operaciones de datos. Por lo tanto, Join se puede usar para modificar datos en una tabla. Por el contrario, para aclarar las condiciones en la tabla o en esos casos, si desea actualizar los datos en varias tablas para las mismas condiciones.
Por ejemplo, considera este problema. Se dan tres tablas en las que hay algunos datos. Debe realizar un cambio en los datos en ambas tablas, utilizando una consulta. Solo para resolver este tipo de tareas, puede usar la construcción Join en el comando Update. El tipo de la construcción de unión depende, como en el caso de obtención de datos, del resultado que el programador desea obtener.
Consideremos el ejemplo más simple. Debe actualizar la misma consulta para las mismas condiciones. Dichas consultas están diseñadas para optimizar el trabajo con la base de datos. ¿Por qué escribir diferentes consultas para cada una de las tablas, si puede realizar todas las manipulaciones de datos con una consulta? El ejemplo de MySQL Update Join en nuestro caso será:
Muy a menudo cuando se trabaja con una base de datosLas consultas deben construirse no sólo con la unión de varias tablas, sino también con el uso de sub-consultas. Tales problemas son bastante difíciles de entender para las bases de datos programador novato. La dificultad es que debe pensar en cada paso, determinar qué datos de qué tabla o consulta debe obtener y cómo deberá trabajar con ellos en el futuro.
Para una comprensión más concreta,(en MySQL Join) ejemplos de consultas complejas. Si usted es nuevo y se acaba de empezar a trabajar con bases de datos, tales formación sólo se beneficiará. La opción ideal serán los ejemplos de MySQL Left Join.
Esta solicitud nos devolverá 58 entradas de contratoVentas, para las cuales el saldo de fondos para la fecha seleccionada está lleno o existe. En este caso, esta es la fecha actual. También en la muestra, se agregó la condición de que el nombre del contrato debe contener símbolos "123". La información que se muestra en la pantalla (datos) se ordenará según el número de contrato.
El siguiente ejemplo mostrará los detalles de todos los pagos en los que se especifica el número de contrato.
Como se mencionó anteriormente, cuando se trabaja con bases de datospuede combinar no solo tablas, sino también una tabla con una consulta. Este diseño se utiliza principalmente para acelerar la consulta y optimizarla.
Por ejemplo, si es necesario de una tabla quetiene varios cientos de campos y, digamos, mil registros, seleccione solo dos campos, luego debe usar una consulta que devolverá solo los campos requeridos y los fusionará con la muestra de datos principal. Como ejemplo de MySQL Join Select, puede considerar una consulta de este tipo:
No todas las formas de usar estándarConstrucciones MySQL, pero solo estándares. La forma de utilizar el constructo de unión y en cuál de sus formas, el programador mismo decide, pero vale la pena recordar y tener en cuenta qué resultado se debe obtener cuando se ejecuta la consulta.
</ p>