Inizia subitoInizia gratis

Classificare le infrazioni di sosta per fascia oraria

Sono state sollevate alcune preoccupazioni sul fatto che le infrazioni di sosta non vengano emesse in modo uniforme durante la giornata. Ti è stato chiesto di associare le infrazioni di sosta alla fascia oraria di emissione. Ritieni che l'approccio più semplice per completare questo compito sia creare una nuova colonna chiamata morning. Questo campo verrà popolato con (l'intero) 1 se l'infrazione è stata emessa al mattino (tra le 12:00 AM e le 11:59 AM) e con (l'intero) 0 in caso contrario. L'ora di emissione è registrata nella colonna violation_time della tabella parking_violation. Questa colonna è composta da 4 cifre seguite da una A (per AM) o una P (per PM).

In questo esercizio, popolerai la colonna morning abbinando i pattern dei violation_time che si verificano al mattino.

Questo esercizio fa parte del corso

Pulizia dei dati nei database PostgreSQL

Visualizza corso

Istruzioni dell'esercizio

  • Usa il pattern di espressione regolare '\d\d\d\dA' nella sottoquery per fare matching dei valori di violation_time composti da 4 cifre consecutive (\d) seguite da una A maiuscola.
  • Modifica la clausola CASE per popolare la colonna morning con 1 (intero senza virgolette) quando l'espressione regolare corrisponde.
  • Modifica la clausola CASE per popolare la colonna morning con 0 (intero senza virgolette) quando l'espressione regolare non corrisponde.

esercizio interattivo pratico

Prova questo esercizio completando questo codice di esempio.

SELECT 
	summons_number, 
    CASE WHEN 
    	summons_number IN (
          SELECT 
  			summons_number 
  		  FROM 
  			parking_violation 
  		  WHERE 
            -- Match violation_time for morning values
  			___ SIMILAR TO ___
    	)
        -- Value when pattern matched
        THEN ___ 
        -- Value when pattern not matched
        ELSE ___ 
    END AS morning 
FROM 
	parking_violation;
Modifica ed esegui il codice