Comment faire pour obtenir l'époque dans SQL Server?
Le scénario est le suivant:
sélectionnez max date à partir d'une table, lors de la table cible ayant pas de données, de sorte que le max date est nulle. lorsque la date étant nulle, je veux obtenir la date la plus ancienne du système, de sorte que l'époque semble parfait.
J'ai cherché quelques façons dont DATEADD fonctions, mais qui ne semble pas élégant.
double possible de Ce qui est l'équivalent de php time() dans mssql?
Attendez... vous voulez dire de l'époque comme dans une époque en général, ou plus précisément de l'époque unix? Aussi, le max d'un inexistante jeu nul a de sens pour moi. Pourquoi vous n'aimez pas le résultat nul?
fr... je veux utiliser ce temps comme une condition where. alors, si c'est nul, j'ai besoin de changer clause where qui n'est pas ma prétention. À la fin, une époque qui semble parfait pour ce scénario, aucune modification ne doit être dans la clause where. Ai-je clair?\
Attendez... vous voulez dire de l'époque comme dans une époque en général, ou plus précisément de l'époque unix? Aussi, le max d'un inexistante jeu nul a de sens pour moi. Pourquoi vous n'aimez pas le résultat nul?
fr... je veux utiliser ce temps comme une condition where. alors, si c'est nul, j'ai besoin de changer clause where qui n'est pas ma prétention. À la fin, une époque qui semble parfait pour ce scénario, aucune modification ne doit être dans la clause where. Ai-je clair?\
OriginalL'auteur freeman | 2012-04-01
Vous devez vous connecter pour publier un commentaire.
Si je comprends votre question correctement, dans SQL Server, l'époque est donnée par
cast(0 as datetime)
:OriginalL'auteur Mitch Wheat
La date la plus proche qui peut être stockée dans SQL champ datetime dépend du type de données que vous utilisez:
Pour des renseignements plus précis voir de https://msdn.microsoft.com/en-GB/library/ms186724.aspx#DateandTimeDataTypes
La époque est utile si vous êtes à la conversion des numéros de dates, mais hors de propos si vous êtes l'enregistrement des dates comme des dates.
Si vous ne voulez pas avoir affaire avec des valeurs null correctement la réponse la plus simple est de choisir une date que vous savez avant de vos données et de les coder en dur dans votre requête.
cast('1900-01-01' as datetime)
fonctionnera dans la plupart des cas.Tout en utilisant quelque chose comme
cast(0 as datetime)
produit le même résultat il obscurcit ce que vous avez fait dans votre code. Quelqu'un le maintenant, vous vous demandez où ces drôles de vieilles dates viennent de, sera en mesure de repérer la date codée en dur plus rapidement.OriginalL'auteur Stephen Turner
Si vous définissez l'époque comme le 1 janvier 1970: Le mieux: pour la stocker dans une variable
OriginalL'auteur Olivier Faucheux