Maison > base de données > tutoriel mysql > Quel est le moyen le plus efficace d'extraire une date d'une valeur DATETIME dans SQL Server ?

Quel est le moyen le plus efficace d'extraire une date d'une valeur DATETIME dans SQL Server ?

Susan Sarandon
Libérer: 2025-01-13 08:00:43
original
594 Les gens l'ont consulté

What's the Most Efficient Way to Extract a Date from a DATETIME Value in SQL Server?

Extraire efficacement les dates de la date et de l'heure dans SQL Server

L'extraction efficace des dates à partir des valeurs de date et d'heure combinées dans SQL Server est essentielle pour les tâches de manipulation de données. Dans ce cas, la question est de savoir comment obtenir la date à partir d'une valeur datetime telle que « 2008-09-25 12:34:56 ».

Diverses approches ont été proposées, notamment :

  • CAST(FLOOR(CAST(CRETS AS FLOAT)) AS DATETIME)

Cette méthode convertit la valeur datetime en float, effectue une opération au sol pour tronquer la partie décimale, puis reconvertit le résultat en datetime. Bien que très efficace, il a été observé que cette méthode n’est pas la plus rapide dans toutes les situations.

  • CONVERTIR(DATETIME, CONVERTIR(VARCHAR(10), CRETS, 120) , 120)

Cette méthode consiste à convertir la valeur datetime en une chaîne de longueur 10, puis à reconvertir la chaîne en datetime si le style 120 est spécifié (forçant la conversion de date uniquement).

  • DATEADD(DAY, DATEDIFF(DAY, 0, CRETS), 0)

Cette méthode calcule le nombre de jours entre une valeur datetime et minuit, puis ajoute cette différence à minuit pour obtenir la date.

Analyse des performances

Pour déterminer l'approche la plus efficace, nous avons effectué des tests de performances sur de grandes tables contenant des horodatages précis à la milliseconde près. Les délais d'exécution suivants ont été observés :

  • SÉLECTION Pure : 33803 ms
  • Diffusion au sol : 33545 millisecondes
  • Conversion de chaîne : 33843 millisecondes
  • DateAdd : 33440 millisecondes

Sur la base de ces résultats, DateAdd est légèrement plus rapide dans certains cas de test. Notez que les performances peuvent varier en fonction de la distribution des données, de la configuration du serveur et des caractéristiques de la charge de travail.

Par conséquent, lors du choix de la méthode la plus efficace pour extraire les dates et les heures de SQL Server, il est recommandé d'évaluer diverses méthodes via des tests de performances basés sur un ensemble de données spécifique et des exigences de charge de travail.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal