Test automatisé de SQL pour savoir si "existe", arrêtez de compter, cela prend du temps

Selon une certaine condition, interrogez "
Oui " et "Non" à partir de la table de la base de données, et il n'y a que deux états, alors pourquoi avez-vous besoin de sélectionner count (*) lors de l'écriture de SQL? Que ce soit un nouveau programmeur étoile ou un superbe Le programmeur Lao Bai qui est sur le champ de bataille depuis de nombreuses années a le même décompte que toujours

À l'heure actuelle, la méthode d'écriture de la plupart des gens
a révisé à plusieurs reprises le code et a trouvé le phénomène tel qu'il est: dans le code métier, il est nécessaire de rechercher s'il existe des enregistrements basés sur une ou plusieurs conditions, sans se soucier du nombre d'enregistrements. Le SQL courant et l'écriture de code sont les suivants

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

Vous vous sentez bien? Il n'y a aucun problème pour
 
optimiser la solution. La
méthode d'écriture recommandée est la suivante:

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

SQL n'utilise plus count, mais utilise LIMIT 1 à la place, de sorte que lorsque la requête de base de données en rencontre un, elle retourne. Ne continuez pas à rechercher combien il en reste. Il suffit de déterminer si elle n'est pas vide dans le code métier.

Résumé
Plus le nombre d' éléments trouvés en fonction des conditions de la requête est élevé, plus l'amélioration des performances est évidente et, dans certains cas, la création d'index conjoints peut être réduite.

Recommander de bons articles:

Quel type de personne convient aux tests de logiciels?

Connaissances pour comprendre les tests automatisés python (3)

Quel est le plus adapté aux tests automatisés, Python ou Java?

Le travail quotidien des testeurs de logiciels

Jouez avec les tests automatisés Python + Selenium en 10 minutes et apprenez-vous à démarrer rapidement!

10 ans de perceptions des ingénieurs de test de logiciels - à des amis encore confus

Enfin: Bienvenue à suivre l'éditeur pour recevoir un résumé des connaissances de base des ingénieurs de test automatisé Python avec un document pdf de 300 pages! Groupe d'échange de technologies de test de logiciels: (313782132) Le contenu de ces documents sont tous les points de connaissances que l'intervieweur doit demander pendant l'entretien. Le chapitre comprend de nombreux points de connaissances, y compris les connaissances de base, les bases de Linux, Shell, les principes du programme Internet, Mysql Base de données, rubriques sur les outils de capture de paquets, outils de test d'interface, programmation de tests avancés-Python, tests d'automatisation Web, tests d'automatisation d'applications, tests d'automatisation d'interfaces, tests d'intégration continue avancés, framework de tests de développement d'architecture, tests de performances, tests de sécurité, etc.

Je suppose que tu aimes

Origine blog.csdn.net/weixin_50271247/article/details/108491066
conseillé
Classement