始める無料で始める

インジケーター変数を持つテーブルを作成する

evanston311 データの中で、優先度が medium または high のリクエストに、依頼者の連絡先情報(メールアドレスまたは電話番号)が含まれる可能性が高いかどうかを確認しましょう。

  • メールアドレスには @ が含まれます。
  • 電話番号は「3文字-3文字-4文字」のパターンを持ちます。例:555-555-1212。

これらのパターンを照合するには LIKE を使います。% は任意の数の文字(0文字も含む)に、_ は1文字にそれぞれ一致します。パターンを % で囲む(前後に付ける)ことで、他のテキストの中からそのパターンを検索できます。

例えば、'%___.com%' を使うと、トップレベルドメインが '.com' で、その前に少なくとも3文字を持つウェブサイトへの参照を検索できます。

メールと電話番号のインジケーター変数を作成し、一時テーブルに保存しましょう。LIKE は True または False を返しますが、ブール値(True または False)を integer にキャストすると、True が 1 に、False が 0 に変換されます。これにより、後で値を集計しやすくなります。

この演習はコースの一部です

SQLによる探索的データ分析

コースを見る

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

-- To clear table if it already exists
DROP TABLE IF EXISTS indicators;

-- Create the indicators temp table
___ ___ ___ ___ AS
  -- Select id
  SELECT id, 
         -- Create the email indicator (find @)
         CAST (description LIKE '___' AS integer) AS email,
         -- Create the phone indicator
         ___ (___ ___ '___' AS integer) AS phone 
    -- What table contains the data? 
    FROM ___;

-- Inspect the contents of the new temp table
SELECT *
  FROM indicators;
コードを編集して実行