1. Learn
  2. /
  3. 课程
  4. /
  5. SQL 中的探索性数据分析

Connected

道练习

创建包含指示变量的表

确定 evanston311 数据中,中优先级和高优先级的请求是否更可能包含请求人联系方式:电子邮件地址或电话号码。

  • 电子邮件包含一个 @。
  • 电话号码的模式是 3 个字符、短横线、3 个字符、短横线、4 个字符。例如:555-555-1212。

使用 LIKE 来匹配这些模式。请记住,% 可匹配任意数量的字符(包括 0),而 _ 匹配单个字符。在模式前后加上 %(即将您的模式包裹在 % 中)可在其他文本中定位它。

例如,'%___.com%' 可以用来搜索对顶级域 '.com' 的引用,且其前至少有 3 个字符。

在临时表中创建并存储 email 和 phone 的指示变量。LIKE 的结果是 True 或 False,但将布尔值(True 或 False)转换为 integer 时,True 会变为 1,False 会变为 0。这样后续汇总会更方便。

说明 1 / 共 2 个

undefined XP
    1
    2
  • 从 evanston311 创建一个临时表 indicators,包含 3 列:id、email 和 phone。

  • 使用 LIKE 比较在 description 中检测 email 和 phone 的模式,并用 CAST() 将结果转换为整数。

    • 您的 phone 指示变量应结合下划线 _ 和短横线 - 来表示标准的 10 位电话号码格式。
    • 记得在模式的开头和结尾加上 %,这样就能在其他文本中定位该模式!