Wprowadzenie do Teradata Current Date
Teradata ’ s CURRENT_DATE zwraca bieżącą datę w momencie złożenia zapytania. Jeśli w przypadku, gdy CURRENT_DATE jest wywoływany więcej niż jeden raz, to ta sama data jest zwracana razy CURRENT_DATE jest wywoływana. Zwracana data nie zmienia się przez cały czas trwania żądania. Domyślnie CURRENT_DATE zwraca znacznik czasu lokalnej strefy czasowej. W każdym razie, możemy określić przemieszczenia, jeśli jest to wymagane. Ponadto ważną rolę odgrywa również flaga TimeDateWZControl. Mamy tendencję do uzyskiwania różnych wyników w zależności od tego flaga jest ustawiona na Włączone lub wyłączone.
jaka jest aktualna data Teradata?
CURRENT_DATE jest funkcją daty Teradata, która jest również zgodna z ANSI. Przede wszystkim zwraca bieżącą datę w tej instancji, ale istnieje kilka alternatyw, które można wybrać zgodnie z wymaganiami. Może istnieć wiele elementów, które mogą być użyte w połączeniu z CURRENT_DATE, aby pobrać wymagania dotyczące daty.
rozpocznij bezpłatny kurs Data Science
Hadoop, Data Science, Statistics & inne
- AT LOCAL: upewnia się, że wartość zwracana przez funkcję CURRENT_DATE jest pobierana przy użyciu znacznika czasu sesji & Strefa czasowa sesji, pod warunkiem, że znacznik kontroli DBS TimeDateWZControl jest ustawiony na true.
- w przeciwnym razie, jeśli TimeDateWZControl jest ustawiony na false, wyłączony, wtedy CURRENT_DATE zwraca znacznik czasu oparty na Teradata DB server & Strefa czasowa sesji.
- przy wyrażeniu: zapewnia przesunięcie strefy czasowej o czas określony przez wyrażenie przed zwróceniem wartości funkcji CURRENT_DATE
- typ danych wyrażenia jest zdefiniowany w interwale godzina(2) do minuty.
- AT time_zone_string: W tym przypadku time_zone_string działa jako referencyjny znacznik czasu w celu określenia przesunięcia danych zwracanych przez CURRENT_DATE
zarówno klauzula AT, jak i CURRENT_DATE są zgodne z ANSI.
jeśli podamy CURRENT_DATE albo bez klauzuli AT jak poniżej:
CURRENT_DATE
lub jako
CURRENT_DATE AT LOCAL
następnie wartość zwracana w obu wyżej wymienionych scenariuszach jest zależna od ustawień flagi kontrolnej DBS, która jest:
- TimeDateWZControl
Case 1: Jeśli ta flaga jest włączona lub ustawiona na true, wtedy CURRENT_DATE zwraca datę według czasu sesji i strefy czasowej sesji.
Przypadek 2: Jeśli ta flaga jest wyłączona lub ustawiona na false, wtedy CURRENT_DATE zwraca datę według lokalnej wartości czasu dB Teradata i strefy czasowej sesji.
4.6 (3144 ocen)
Zobacz kurs
CURRENT_DATE jest również dostosowywany zgodnie z początkiem i końcem czasu letniego.
wynikowy typ danych, format i tytuł CURRENT_DATE to:
- typ danych to date,
- Format: gdy jest ustawiony tryb formularza daty, domyślnym formatem jest format IntegerDate.
- domyślny tytuł to data; w przeciwnym razie możemy również ustawić tytuły zdefiniowane przez Użytkownika za pomocą klauzuli as jako CURRENT_DATE jako Today_date,
- domyślny tytuł, który jest datą, zostanie zastąpiony tytułem 'Today’,
jak zobaczyć CURRENT_DATE w Teradata?
weźmy przykład, aby zrozumieć go szczegółowo:
SELECT CURRENT_DATE as curr_Date
spowoduje to zwrócenie daty w momencie wykonania i w domyślnym formacie, jakim jest data (typ danych) – RRRR-MM-DD.
co zrobić, jeśli chcemy dodać dni do bieżącej daty i chcemy, aby ta sama data została zwrócona?
wymagane do tego polecenie SQL może wyglądać następująco:
SELECT CURRENT_DATE + 1
spowoduje to dodanie dnia do bieżącej daty zwracanej przez system. Załóżmy, że current_date w systemie to '2020-03-24′. Następnie powyższy SQL, który ma dodanie jednego dnia, zwróci '2020-03-25′.
miejmy to samo za pomocą metody 2, która ma nieco inną składnię, jak wspomniano poniżej:
SELECT CURRENT_DATE + INTERVAL '15' DAY
spowoduje to dodanie 15 dni do bieżącej daty zwracanej przez system. Załóżmy, że current_date w systemie to '2020-03-24′. Następnie powyższy SQL, który ma dodatek jednego dnia, powróci '2020-04-08.”
co zrobić, jeśli chcemy odjąć dni od bieżącej daty i chcemy, aby ta sama data została zwrócona?
wymagane do tego polecenie SQL może wyglądać następująco:
SELECT CURRENT_DATE - 1
spowoduje to odjęcie dnia od bieżącej daty zwracanej przez system. Załóżmy, że current_date w systemie to '2020-03-24′. Następnie powyższy SQL, który ma dodatek jednego dnia, powróci '2020-03-23.”
miejmy to samo za pomocą metody 2, która ma nieco inną składnię, jak wspomniano poniżej:
SELECT CURRENT_DATE - INTERVAL '15' DAY
spowoduje to odjęcie 15 dni od bieżącej daty zwróconej przez system. Załóżmy, że current_date w systemie to '2020-03-24′. Następnie powyższy SQL, który ma dodatek jednego dnia, powróci '2020-03-09.’
przykłady bieżącej daty Teradata
weźmy przykład, aby dowiedzieć się praktycznego użycia bieżącej daty i zrozumieć to samo. Rozważ poniższą tabelę, w której mamy identyfikator zamówienia i datę zamówienia. Załóżmy, że musimy dowiedzieć się z zamówień złożonych w ciągu ostatnich 30 dni.
omówmy podejście, które możemy zastosować, aby osiągnąć to tutaj:
możemy porównać datę zamówienia z (CURRENT_DATE – 15), a jeśli data zamówienia jest większa niż ta, możemy ustawić pole pochodne jako True else false. W ten sposób możemy zidentyfikować wszystkie zamówienia, które zostały złożone w ciągu ostatnich 30 dni.
napiszmy polecenie SQL dla tego samego.
SELECT ID, ORDER_DATE,
CASE
WHEN ORDER_DATE >= (CURRENT_DATE - 30) Then 'TRUE
ELSE 'FALSE
END as Indicator
from Table_name
nowy wskaźnik pola zostanie utworzony tutaj, mając wartość True, jeśli zamówienie zostało złożone w ciągu ostatnich 30 dni. Załóżmy, że bierzemy bieżącą datę jako „2020-03-20” w tym przykładzie, wtedy pole wskaźnika będzie miało poniższe wartości.
korzystając z pola wskaźnika, możemy pobrać tylko te rekordy, które mają zamówienia złożone z ostatnich 30 dni.
wniosek
- CURRENT_DATE zwraca domyślnie bieżącą datę systemową
- klauzula AT może być używana z CURRENT_DATE, aby mieć odbiegającą datę zgodnie z wymaganiami
- obie klauzule CURRENT_DATE & AT są zgodne z ANSI.
- możemy również dodawać i odejmować wymagany interwał dni od CURRENT_DATE zgodnie z wymaganiami.
Polecane artykuły
to jest przewodnik po aktualnej dacie Teradata. Tutaj również omawiamy wprowadzenie i jak zobaczyć CURRENT_DATE w Teradata? Wraz z różnymi przykładami. Możesz również zapoznać się z poniższymi artykułami, aby dowiedzieć się więcej–
- Teradata vs Oracle
- Kariera w Teradata
- Terraform vs Ansible
- Teradata CASE Statement | Jak korzystać?
- Przewodnik po partycji Teradata według
- Architektura | Komponenty Teradata
- poznaj podstawowy indeks w Teradata