Najnowsze tutoriale tworzenie stron internetowych
 

SQL Data Funkcje


Termin SQL

Najtrudniejszą częścią podczas pracy z datami jest, aby upewnić się, że format daty próbujesz wstawić, pasuje do formatu kolumnie data w bazie danych.


Data Funkcje MySQL

Poniższa tabela zawiera najważniejsze funkcje wbudowane daty w MySQL:

Funkcjonować Opis
NOW() Zwraca bieżącą datę i godzinę
CURDATE() Zwraca bieżącą datę
CURTIME() Zwraca aktualny czas
DATE() Ekstrakty datę część datę lub datę / czas wypowiedzi
EXTRACT() Zwraca pojedynczą część datę / czas
DATE_ADD() Dodaje określony przedział czasu do daty
DATE_SUB() Odejmuje określonego czasu od daty
DATEDIFF() Zwraca liczbę dni między dwiema datami
DATE_FORMAT() Wyświetla datę / czas danych w różnych formatach

SQL Server Data Funkcje

Poniższa tabela zawiera najważniejsze wbudowane date funkcje w SQL Server:

Funkcjonować Opis
GETDATE() Zwraca bieżącą datę i godzinę
DATEPART() Zwraca pojedynczą część datę / czas
DATEADD() Dodaje lub odejmuje określonego czasu od daty
DATEDIFF() Zwraca czas pomiędzy dwiema datami
CONVERT() Wyświetla datę / czas danych w różnych formatach

SQL Data Typy danych

MySQL pochodzi z następujących typów danych do przechowywania daty lub wartość daty / czasu w bazie danych:

  • DATA - format YYYY-MM-DD
  • DATETIME - format: RRRR-MM-DD HH: MI: SS
  • TIMESTAMP - format: RRRR-MM-DD HH: MI: SS
  • ROK - format YYYY lub YY

SQL Server jest wyposażony w następujące typy danych do przechowywania daty lub wartość daty / czasu w bazie danych:

  • DATA - format YYYY-MM-DD
  • DATETIME - format: RRRR-MM-DD HH: MI: SS
  • Smalldatetime - format: RRRR-MM-DD HH: MI: SS
  • TIMESTAMP - format: unikalny numer

Note: Typy daty są wybierane dla kolumny podczas tworzenia nowej tabeli w bazie danych!

Aby otrzymać przegląd wszystkich dostępnych typów danych, przejdź do naszego pełnego odniesienia typów danych .


SQL Praca z datami

Możesz porównać dwie daty łatwo, jeśli nie ma składnika czasu zaangażowany!

Załóżmy, że mamy następujący "Orders" tabeli:

OrderId ProductName OrderDate
1 Geitost 2008-11-11
2 Camembert Pierrot 2008-11-09
3 Mozzarella di Giovanni 2008-11-11
4 Mascarpone Fabioli 2008-10-29

Teraz chcemy, aby wybrać rekordy z OrderDate z "2008-11-11" z powyższej tabeli.

Używamy następującą instrukcję SELECT:

SELECT * FROM Orders WHERE OrderDate='2008-11-11'

Wynik-set będzie wyglądać następująco:

OrderId ProductName OrderDate
1 Geitost 2008-11-11
3 Mozzarella di Giovanni 2008-11-11

Teraz załóżmy, że "Orders" tabeli wygląda następująco (zauważ składową czasową w "OrderDate" kolumny):

OrderId ProductName OrderDate
1 Geitost 2008-11-11 13:23:44
2 Camembert Pierrot 2008-11-09 15:45:21
3 Mozzarella di Giovanni 2008-11-11 11:12:01
4 mascarpone Fabioli 2008-10-29 14:56:59

Jeśli używamy tego samego SELECT jak wyżej:

SELECT * FROM Orders WHERE OrderDate='2008-11-11'

będziemy mieli żadnego rezultatu! To dlatego, że zapytanie jest tylko patrząc na daty bez części czasu.

Tip: Jeśli chcesz zachować swoje pytania proste i łatwe w utrzymaniu, nie pozwalają komponenty czasu w terminach!