Maison > Questions et réponses > le corps du texte
Ces 24 lignes consécutives sont similaires, mais les conditions sont différentes, comme 9h à 10h, 10h à 11h
欧阳克2017-06-08 11:05:29
"Évidemment, lorsque vous utilisez UNION ALL, vous combinez simplement les requêtes ensemble sans juger si les données sont dupliquées. Par conséquent, lorsque vous êtes sûr qu'il n'y aura pas de données en double dans les résultats de la requête ou qu'il n'est pas nécessaire de supprimer les données en double. , vous devez utiliser UNION ALL pour améliorer l'efficacité des requêtes.
学习ing2017-06-08 11:05:29
Pourquoi ne pas utiliser OR
pour relier ces conditions ? Par exemple :
SELECT ... WHERE hour BETWEEN (9, 11) OR hour BETWEEN (13, 15)
为情所困2017-06-08 11:05:29
Pour la base de données, 24 requêtes consommeront certainement plus de ressources qu'une requête (analyse de vérification multiple + transmission réseau), et si votre temps est continu, vous pouvez le fusionner dans le pire des cas, l'union est meilleure si le temps ne l'est pas. continu Bien sûr, le principe est que le champ temporel a un index. Il n'est pas recommandé de le remplacer par or, car or augmenterait l'analyse et il y aurait un risque d'analyse complète de la table lorsqu'il y aurait trop de plages de temps. l'union all n'a besoin que de fusionner les ensembles de résultats