2017-08-29 5 views

Répondre

1

Cela dépend vraiment de vos préférences personnelles; on n'est pas supérieur à l'autre car ils ont la même sémantique et la même performance. L'argument en faveur de l'utilisation de EXTRACT est que si vous extrayez d'autres parties date/heure dans la liste de sélection, cela les reflète. Par exemple:

SELECT 
    EXTRACT(DATE FROM TIMESTAMP_MILLIS(timestamp)) AS date, 
    EXTRACT(ISOYEAR FROM TIMESTAMP_MILLIS(timestamp)) AS iso_year, 
    EXTRACT(ISOWEEK FROM TIMESTAMP_MILLIS(timestamp)) AS iso_week 
FROM YourTable; 

Par rapport à:

SELECT 
    DATE(TIMESTAMP_MILLIS(timestamp)) AS date, 
    EXTRACT(ISOYEAR FROM TIMESTAMP_MILLIS(timestamp)) AS iso_year, 
    EXTRACT(ISOWEEK FROM TIMESTAMP_MILLIS(timestamp)) AS iso_week 
FROM YourTable; 
+0

Merci, Elliot! –