Κατά περιόδους που αφορούν την ημερομηνία και την ώρα SQL μπορεί να είναι αρκετά δύσκολο. Ενώ η ημερομηνία και η ώρα είναι πραγματικά εντελώς διαφορετικοί τύποι δεδομένων, συχνά συγχωνεύονται σε έναν τύπο δεδομένων ημερομηνίας ώρας. Ημερομηνίες και ώρες SQL από μόνες τους είναι αρκετά απλές αλλά η συγχώνευση των δύο μπορεί να είναι μια από τις πιο οδυνηρές εργασίες. Σε αυτό το άρθρο, θα μάθετε λεπτομερώς τον τύπο χρόνου χρόνου SQL.
- Τι είναι ο τύπος δεδομένων DateTime;
- περιγραφή χρόνου
- Μετατροπή άλλων τύπων ημερομηνίας και ώρας στον τύπο δεδομένων χρόνου ώρας
Ποιος είναι ο τύπος δεδομένων της ώρας δεδομένων;
Στο SQL, ημερομηνία ώρα ο τύπος δεδομένων ημερομηνίας χρησιμοποιείται για τιμές που περιέχουν ημερομηνία και ώρα. Microsoft το ορίζει ως ημερομηνία σε συνδυασμό με μια ώρα της ημέρας με κλασματικά δευτερόλεπτα που βασίζεται σε ένα 24ωρο ρολόι .
Η SQL συγκεκριμένα, έχει πολλούς τύπους δεδομένων που συνδυάζουν τις παραστάσεις ημερομηνίας και ώρας καθιστώντας τα πράγματα πιο περίπλοκα. Το πιο ευρέως χρησιμοποιούμενο είναι το DATETIME, όπως υπήρχε από τις προηγούμενες εκδόσεις του SQL. Η SQL ανακτά και εμφανίζει τιμές DATETIME σε μορφή «ΕΕΕΕ-ΜΜ-ΗΗ ωω: mm: ss». Το υποστηριζόμενο εύρος είναι «1753-01-01 00:00:00» έως «9999-12-31 23: 59: 59,997». Ας εξερευνήσουμε τον τύπο ημερομηνίας με περισσότερες λεπτομέρειες.
περιγραφή χρόνου
Ελέγξτε τον παρακάτω πίνακα για να μάθετε περισσότερα σχετικά με τον τύπο χρόνου ώρας SQL.
Ιδιοκτησία | αξία |
Σύνταξη | ημερομηνία ώρα |
Χρήση | ΔΗΛΩΣΤΕ @MyDatetimeημερομηνία ώρα ΔΗΜΙΟΥΡΓΙΑ ΠΙΝΑΚΑ Πίνακας 1 (Στήλη1ημερομηνία ώρα) |
Μορφή | «ΕΕΕΕ-ΜΜ-ΗΗ ωω: mm: ss.nnn |
Εύρος χρόνου | 00:00:00 έως 23: 59: 59,997 |
Εύρος στοιχείων |
|
Μέγεθος αποθήκευσης t sql ημερομηνία δεδομένων τύπου | 8 byte |
Προεπιλεγμένη τιμή | 1900-01-01 00:00:00 |
Ημερολόγιο | Gregorian (Περιλαμβάνει το πλήρες φάσμα των ετών.) |
Σημείωση: Οι παραπάνω λεπτομέρειες ισχύουν για τον τύπο ημερομηνίας στο Transact-SQL καιΔιακομιστής SQL.
Λοιπόν, αυτό είναι ημερομηνία ώρα σε SQL. Αλλά τι θα κάνατε αν έχετε άλλη ημερομηνία &τύπους χρόνου και πρέπει να τους μετατρέψετε σε ημερομηνία ώρα τύπος?
Μετατροπή άλλων τύπων ημερομηνίας και ώρας στον τύπο δεδομένων χρόνου ώρας
ο ημερομηνία ώρα τύπος δεδομένων σε SQL περιλαμβάνει την ημερομηνία και την ώρα, με ένα τμήμα 3 ψηφίων κλασματικών δευτερολέπτων. Η ακρίβειά του στρογγυλοποιείται σε προσαυξήσεις των 0,000, 0,003 ή 0,007 δευτερολέπτων. Έτσι, όταν μετατρέπετε ένα ημερομηνία ή χρόνος τιμές σε ημερομηνία ώρα , επιπλέον πληροφορίες προστίθενται στην τιμή. Αυτό συμβαίνει επειδή το ημερομηνία ώρα ο τύπος δεδομένων περιέχει ημερομηνία και ώρα. Αυτό το μέρος του άρθρου εξηγεί τι συμβαίνει όταν άλλο ημερομηνία και ώρα οι τύποι δεδομένων μετατρέπονται σε ημερομηνία ώρα Τύπος δεδομένων.
Παράδειγμα 1: Σιωπηρή μετατροπή μεταξύ ημερομηνίας και ώρας
DECLARE @ ημερομηνία ημερομηνία = '2020-12-01' ΔΗΛΩΣΗ @ ημερομηνία χρόνου ώρα = @ ημερομηνία
Αποτέλεσμα
@datetime @date ------------------------- ---------- 2016-12-21 00: 00: 00.000 2016 -12-21
Παράδειγμα 2: Σιωπηρή μετατροπή μεταξύ ημερομηνίας και ώρας με χρήση CAST ()
DECLARE @thedate date = '2020-12-01' SELECT @thedate AS 'date', CAST (@thedate AS datetime) AS 'ώρα ώρας'
Αποτέλεσμα
@datetime @date ------------------------- ---------- 2016-12-21 00: 00: 00.000 2016 -12-21
Παράδειγμα 3: Σιωπηρή μετατροπή από το smalldatetime σε ώρα
Όταν η μετατροπή είναι από s malldatetime τύπος, αντιγράφονται οι ώρες και τα λεπτά. Τα δευτερόλεπτα και τα κλασματικά δευτερόλεπτα ορίζονται στην τιμή 0. Ο παρακάτω κώδικας δείχνει τα αποτελέσματα της μετατροπής a μικρή ώρα τιμή σε ένα ημερομηνία ώρα αξία.
ΔΗΛΩΣΗ @smalldatetime smalldatetime = '2020-12-01 12:32' DECLARE @datetime datetime = @smalldatetime SELECT @datetime AS '@datetime', @smalldatetime AS '@smalldatetime'
Αποτέλεσμα
@datetime @smalldatetime ------------------------- --------------------- - 2016-12-01 12: 32: 00.000 2016-12-01 12:32:00
Ομοίως, μπορείτε να μετατρέψετε άλλους ημερομηνία ώρα τύποι σε ώρα δεδομένων πληκτρολογήστε είτε σιωπηρά είτε χρησιμοποιώντας εκμαγείο() και μετατρέπω() μεθόδους. Για αναφορά, δείτε τον παρακάτω πίνακα για να εξοικειωθείτε με τις μορφές όλων των τύπων ημερομηνίας και ώρας.
Τύπος δεδομένων | Παράδειγμα |
χρόνος | 12:35:29. 1234567 |
ημερομηνία | 2007-05-08 |
μικρή ώρα | 2007-05-08 12:35:00 |
ημερομηνία ώρα | 2007-05-08 12: 35: 29.123 |
ώρα χρόνου2 | 2007-05-08 12:35:29. 1234567 |
χρονοδιάγραμμα | 2007-05-08 12: 35: 29.1234567 +12: 15 |
Με αυτό, φτάσαμε στο τέλος αυτού του άρθρου. Ελπίζω να είστε ξεκάθαροι για το περιεχόμενο που συζητήθηκε εδώ. Βεβαιωθείτε ότι ασκείστε όσο το δυνατόν περισσότερο και επαναφέρετε την εμπειρία σας.
Εάν θέλετε να μάθετε περισσότερα για MySQL και γνωρίστε αυτήν τη σχεσιακή βάση δεδομένων ανοιχτού κώδικα και, στη συνέχεια, ρίξτε μια ματιά στη δική μας που έρχεται με ζωντανή εκπαίδευση με καθοδήγηση εκπαιδευτή και πραγματική εμπειρία έργου. Αυτή η εκπαίδευση θα σας βοηθήσει να κατανοήσετε τη MySQL σε βάθος και να σας βοηθήσει να επιτύχετε την εξουσία πάνω στο θέμα.
Έχετε μια ερώτηση για εμάς; Παρακαλώ αναφέρετέ το στην ενότητα σχολίων αυτού του άρθρου «Διαδικασίες σε SQL και θα επικοινωνήσουμε μαζί σας.