Red de conocimiento informático - Problemas con los teléfonos móviles - Preguntas SQL

Preguntas SQL

Entre estas tres declaraciones SQL, la tercera declaración tiene un efecto diferente que las dos primeras declaraciones.

En la primera declaración SQL, Tbl1 y tbl2 son combinaciones izquierdas. Si hay muchos registros con el mismo ID en tbl2 (suponiendo que haya 10,000 registros con el mismo ID), entonces, esto Cuando la declaración es. Si se deja conectado, la cantidad de datos es muy grande y luego se realiza la agrupación y el filtrado para tomar el más grande, lo que resulta en un bajo rendimiento. Sin embargo, si hay varios registros con la misma identificación, elemento y nombre en tbl1, el resultado final no serán registros duplicados.

La segunda instrucción SQL primero agrupa tbl2 en grupos simples y luego se une a la izquierda. si hay varios registros con la misma identificación, la mayoría de los datos se filtran para mejorar el rendimiento. Hacerlo puede mejorar el rendimiento, pero si hay datos duplicados en tbl1, es posible que haya datos duplicados en los resultados de la consulta SQL. Se recomienda este SQL si está seguro de que no hay datos duplicados en tbl1. Si hay datos duplicados, puede agregar una declaración delimitada para seleccionar, pero por supuesto el rendimiento se reducirá.

Se puede decir que la tercera declaración SQL es básicamente una declaración SQL incorrecta. Los identificadores son todos máximos y al final solo hay un registro. La identificación es el registro más grande y el itme es el más grande. Se encuentra en la consulta, y el nombre es El más grande, el tiempo es el dato más grande que se puede dejar conectado. Por lo tanto, se debe decir que este sql tiene poca importancia. sql

Para consultas SQL, si desea probar su rendimiento, si es Oracle, puede usar el plan de ejecución para ver la ejecución de SQL. , y también puede ver el tiempo de ejecución. Los detalles aún son muy complicados. Se recomienda estudiar el libro "El arte de la programación de Oracle", que contiene instrucciones relevantes.

Si es SQLServer, lo siento, no sé cómo aprender. Pero hay una cosa: al realizar conexiones, si es una tabla secundaria (tbl2 anterior puede considerarse como una tabla secundaria), entonces si la cantidad de datos de conexión se puede reducir en lotes grandes, el rendimiento mejorará enormemente. Una gran cantidad de datos no solo ocupará tiempo de procesamiento de la CPU, sino que, lo que es más importante, puede aumentar una gran cantidad de operaciones de E/S, consumiendo así mucho tiempo.