Metoda rurociągu agregacji MongoDB zapewnia operatorom daty wyodrębnienia dnia od daty. Od tych operatorów mamy $ Dayofonth, $ Dayofweek i $ Dayofyear, którzy odpowiednio dostają dzień. Operator $ Dayofonth zwraca dzień na datę dla konkretnej daty jako liczba całkowita od 1 do 31. Operator DayofWeek generuje liczbę między 1 a 7 jako dzień tygodnia. Następnie mamy w MongoDB operatora $ Dayofyear, który zapewnia liczbę całkowitą od 1 do 366 jako dzień roku dla danego daty. Ci operatorzy daty zajmują datę jako datę formatu ISO lub dokument, który określa datę i strefę czasową do wykorzystania. Strefa czasowa używana przez tych operatorów do wyniku jest opcjonalną specyfikacją. Wszyscy ci operatorzy MongoDB są podobne w implementacji, ale funkcjonalność jest różna.
Jak używać $ Dayofmonth, $ Dayofweek i $ Dayofyear w MongoDB
$ Dayofmonth, $ Dayofweek i $ Dayofyear w MongoDB są wykorzystywane do otrzymania dnia miesiąca, dnia powszedniego i roku. W zależności od operatora wybraliśmy datę podaną. Operatorzy ci zajmują się wyłącznie datami w MongoDB, jak wskazują ich nazwy. Tak więc potrzebujemy kolekcji w MongoDB, która składa się z dokumentów daty. Tutaj wykorzystujemy kolekcję „data umówionego”, która wykorzystuje metodę InsertMany () do wstawienia następujących dokumentów.
db.Data spotkania.wstrząsDokumenty są wstawiane do danego zbioru „dat terminu” zgodnie z wynikami uzyskanymi poniżej. Teraz możemy zastosować $ Dayofonth, $ DayofWeek i $ DayOfyear w tych dokumentach daty, aby odpowiednio odejść od daty.
Przykład nr 1: Korzystanie z operatora $ Dayofonth, aby uzyskać dzień miesiąca w MongoDB
Operator $ Dayofonth jest zatrudniony najpierw, aby uzyskać dzień miesiąca od danego terminu. Wykorzystaliśmy operatora projektu $, w którym powołany jest operator $ Dayofonth. Operator $ Dayofonth jest zdefiniowany z wyrażeniem „$ data”. Z daty $ $ Dayofonth dostanie dzień miesiąca do prognozowanego pola „Spotkanie”.
db.Data spotkania.agregat(Operator $ Dayofonth rozwiązuje wszystkie wartości daty w polu $ data i zwraca dzień miesiąc, który leży w zakresie od „1” do „31”.
[[[Przykład nr 2: Korzystanie z operatora $ Dayofonth, aby uzyskać dzień miesiąca w określonej strefie czasowej w MongoDB
Możemy określić strefę czasową do użycia dla wyjścia operatora $ Dayofonth. Strefa czasowa jest określona przy użyciu przesunięcia UTC w tym przykładzie $ Dayofonth Operator. Ale możemy dostarczyć dowolne specyfikacje strefy czasowej operatorowi $ Dayofonth, aby uzyskać dzień miesiąca tego konkretnego regionu. Ustawiliśmy operator $ Project, w którym ukrywamy pole „_id”, przypisując wartość „0”. Następnie utworzyliśmy pole „UTCOFFSET1”, aby wywołać operator $ Dayofonth. Operator $ Dayofonth bierze pole $ datę jako wartość argumentu „dat” i argument strefowy jako „-1000” UTC. Następnie stworzyliśmy kolejne pole „UTCOFFSET2” na etapie $ Project, aby przeprowadzić kolejną operację operatora $ Dayofonth z strefą czasu przesunięcia UTC. Tutaj określiliśmy argument strefy czasowej z przesunięciem UTC „+1200” dla pola $ data.
db.Data spotkania.agregat(Wynikowy dzień miesiąca w określonej strefie czasowej przesunięcia UTC z $ Dayofonth jest wyświetlany w następujący sposób.
[[[Przykład nr 3: Korzystanie z operatora $ DayofWeek, aby uzyskać dzień tygodnia w MongoDB
Operator $ DATEOFWEEK jest używany w taki sam sposób, jak ustawiliśmy $ Dayofonth w MongoDB. Jedyną różnicą jest ich funkcje. Operator $ DayofWeek jest używany do otrzymania dnia powszedniego od daty. Wykorzystaliśmy operatora $ DayOfWeek w polu „Ministerka”, który jest zdefiniowany na etapie $ Project. Następnie operator $ DayOfWeek jest przypisany do pola $ data, aby uzyskać wartość w dni powszednie.
db.Data spotkania.agregat($ DayofWeek zwrócił dzień tygodnia jako wartość liczbową między „1” a „7” poniżej. Liczba „1” wskazuje „niedzielę”, który jest domyślnym dniem tygodnia, a „7” jest oznaczony jako „sobota”.
[[[Przykład nr 4: Korzystanie z operatora $ DayOfyear, aby uzyskać dzień roku w MongoDB
Teraz mamy operatora $ DayOfyear, który zwraca rok daty jako liczbę numeryczną. $ DayOfyear jest wdrożony tutaj w terenie „mianowanieDayofyear”, który jest tworzony na etapie $ Project. $ DAYOFYEAR jest ustawiony w polu daty „$ data” z dokumentu. $ DayOfyear da nam wartość liczbową jako dzień roku z podanej wartości daty. Liczba roku roku leży między liczbą od 1 do 366.
db.Data spotkania.agregat(Operator $ DayOfyear pobiera dni roku ze wszystkich dokumentów daty zawartych w kolekcji.
[[[Przykład nr 5: Korzystanie z $ Dayofonth, $ Dayofday i $ Dayofyear z innymi wyrażeniami dat w MongoDB
Poniższy przykład wykorzystuje innych operatorów dat wraz z operatorami $ Dayofonth, $ DayofWeek i $ Dayofyear, aby podzielić elementy daty. Mamy etap $ mecz, w którym wyrażenie jest podane jako „termin”: „pielęgnacja skóry”, aby dopasować dokument do danej wartości. Kiedy dokument zostanie dopasowany, wówczas wykonywany jest etap projektu $, w którym utworzyliśmy różne pola dla różnych operacji daty. Wszystkie pola zawierają operator daty wraz z operatorami DayofDay, $ Dayofonth i $ Dayofyear. Te operatorzy zwrócą wartości liczbowe zgodnie z operatorem, który ustawiliśmy na polach.
db.Data spotkania.agregat(Mamy dane wyjściowe, które pokazują oddzielone wartości daty od operatorów daty.
[[[Wniosek
Przewodnik operatora daty MongoDB, który obejmuje $ Dayofonth, $ Dayofweek i $ Dayofyear. Omówiliśmy każdego z operatorów z przykładowym programem. Operator $ Dayofonth został użyty w pierwszym przykładzie, aby uzyskać dzień miesiąca. Następnie wykorzystaliśmy operatora $ Dayofonth z parametrem strefy czasowej, aby uzyskać dzień miesiąca w dostarczonej strefie czasowej. Następnie zademonstrowaliśmy operatora $ DayOfWeek na dzień powszedni do przypisanych wartości daty. Na koniec mamy przykład operatora $ DayOfyear, który pomaga nam poznać dzień roku od ustalonej daty.