Prueba automatizada de SQL para averiguar si "existe", deje de contar, lleva mucho tiempo

De acuerdo con una determinada condición, consulte "
" y "No" en la tabla de la base de datos, solo hay dos estados, entonces, ¿por qué debe seleccionar contar (*) al escribir SQL? Ya sea un nuevo programador estrella o un excelente El programador Lao Bai que ha estado en el campo de batalla durante muchos años tiene la misma cuenta de siempre

En la actualidad, el método de escritura de la mayoría de las personas
ha revisado repetidamente el código y ha encontrado el fenómeno tal como está: en el código comercial, es necesario consultar si hay registros basados ​​en una o más condiciones, y no importa cuántos registros haya. SQL común y escritura de código son los siguientes

  ##### SQL写法: 
  SELECT count(*) FROM table WHERE a = 1 AND b = 2 
   
  ##### Java写法: 
  int nums = xxDao.countXxxxByXxx(params); 
  if ( nums > 0 ) {
    
     
    //当存在时,执行这里的代码 
  } else {
    
     
    //当不存在时,执行这里的代码 
  } 

¿Se siente bien? No hay problema para
 
optimizar la solución. La
forma de escritura recomendada es la siguiente:

 ##### SQL写法: 
  SELECT 1 FROM table WHERE a = 1 AND b = 2 LIMIT 1 
   
  ##### Java写法: 
  Integer exist = xxDao.existXxxxByXxx(params); 
  if ( exist != NULL ) {
    
     
    //当存在时,执行这里的代码 
  } else {
    
     
    //当不存在时,执行这里的代码 
  } 

SQL ya no usa count, sino que usa LIMIT 1, por lo que cuando la consulta de la base de datos encuentra uno, regresará. No continúe buscando cuántos más quedan. Simplemente juzgue si no está vacío en el código comercial.

Resumen
Cuanto mayor sea el número de elementos encontrados según las condiciones de la consulta, más obvia será la mejora del rendimiento. En algunos casos, también se puede reducir la creación de índices conjuntos.

Recomendar buenos artículos:

¿Qué tipo de persona es adecuada para las pruebas de software?

Conocimiento para comprender las pruebas automatizadas de Python (3)

¿Cuál es más adecuado para pruebas automatizadas, Python o Java?

El trabajo diario de los probadores de software

¡Juegue con las pruebas automatizadas de Python + Selenium en 10 minutos y le enseñe un comienzo rápido!

10 años de percepciones de ingenieros de pruebas de software para amigos que todavía están confundidos

Finalmente: Bienvenido a seguir al editor para recibir un resumen de los conocimientos básicos de los ingenieros de pruebas automatizadas de Python con un documento pdf de 300 páginas. Grupo de intercambio de tecnología de pruebas de software: (313782132) El contenido de estos materiales son todos los puntos de conocimiento que el entrevistador debe preguntar durante la entrevista. El capítulo incluye muchos puntos de conocimiento, incluidos conocimientos básicos, conceptos básicos de Linux, Shell, principios del programa de Internet, Mysql Base de datos, temas de herramientas de captura de paquetes, herramientas de prueba de interfaz, pruebas avanzadas: programación de Python, pruebas de automatización web, pruebas de automatización de aplicaciones, pruebas de automatización de interfaces, pruebas de integración continua avanzada, marco de pruebas de desarrollo de arquitectura de pruebas, pruebas de rendimiento, pruebas de seguridad, etc.

Supongo que te gusta

Origin blog.csdn.net/weixin_50271247/article/details/108491066
Recomendado
Clasificación