Je développe un système multi-base de données.
Je veux la différence entre deux dates en secondes.
Dans SQL Server j'ai obtenu:
DATEDIFF(second,stardate,enddate)
En MySql:
TIME_TO_SEC(TIMEDIFF(stardate,enddate))
Ma question: Est-ce que
Sql Ansi ont des fonctions pour gérer les valeurs DateTime?
i.e.: Il existe des fonctions datetime génériques pour toutes les bases de données?Sql Ansi pour gérer les valeurs DateTime
1
A
Répondre
2
Selon SQL: 1999, date1-date0 devrait vous donner une valeur de type INTERVALLE, un struct à partir de laquelle vous devriez être en mesure d'extraire année, mois, jour, etc.
Je ne l'ai jamais utilisé et je ne pense pas qu'il soit largement soutenu (même si je ne suis peut-être pas à jour). Si vous faites du calcul arithmétique dans la base de données et que vous voulez être compatible avec le SGBD, la solution habituelle consiste simplement à utiliser des horodatages entiers (quelle que soit la résolution, mais le temps Unix est commun) et un arithmétique entier -Plate-forme.
Questions connexes
- 1. sql ansi-92 Conforme Question
- 2. SQL (?): Comptage du temps entre deux valeurs datetime
- 3. comparer deux valeurs datetime de SQL Server avec C#
- 4. ANSI 92 Instruction SQL récursive requise
- 5. Table des valeurs de datetime null
- 6. Conversion de datetime XML en datetime SQL
- 7. Comment contrôler le format dans lequel MS-SQL Server renvoie les valeurs datetime?
- 8. Comment gérer les longues comparaisons dans SQL
- 9. Comment gérer les valeurs incorrectes dans un constructeur?
- 10. Comment gérer les valeurs NULL dans mes objets métier
- 11. MS SQL Joindre sur dateTime
- 12. Utilitaire DateTime pour ASP.net
- 13. Script SQL pour agréger les valeurs des colonnes
- 14. SQL: obtenir DATEDIFF pour ne pas retourner les valeurs négatives
- 15. Sql Server DATETIME format incorrrect
- 16. SQL Convertir en GMT DateTime
- 17. En SQL comment comparer les valeurs de date?
- 18. time.h remplacement direct: time_t pour les valeurs (année <1970) et (année> 2038) en ANSI-C ou C99
- 19. Convertir DateTime en DateTime qui fonctionne avec SQL Server?
- 20. Conversations SQL, OPENXML et DateTime
- 21. Requête SQL qui remplace les valeurs NULL.
- 22. SQL Alter Table puis Modifier les valeurs
- 23. sql partiton par Suppress répéter les valeurs
- 24. Fonction SQL Server pour convertir l'heure Unix en datetime local
- 25. Quelles sont les meilleures pratiques pour gérer les informations sensibles?
- 26. Comment gérer les sauts de ligne dans les données pour l'importation avec SQL Loader
- 27. Valeurs SQL Paramètre Multiple
- 28. Tri DataGridView avec des valeurs nulles dans la colonne DateTime
- 29. Objets arbitraires pour gérer les actions?
- 30. Outils pour gérer les webs sémantiques
Plus ou moins, d'où le upvote. Les valeurs INTERVAL (trouvées dans IBM Informix Dynamic Server pour un) peuvent appartenir à l'une des deux classes suivantes: YEAR TO MONTH ou DAY TO SECOND. En effet, vous pouvez avoir une ANNÉE D'INTERVALLE À ANNÉE, ou MOIS À MOIS, ou JOUR à MINUTE, ou HEURE À SECONDE, etc., y compris juste DEUXIÈME. –