样本数据,存储在 S3 的文件中。如您所见,我的数据格式是每行一个 json
{"first": "John", "last": "Smith"}
{"first": "Mary", "last": "O'Hara"}
{"first": "Mary", "last": "Oats"}
我的最终目标是按姓氏查询,并使用 like 运算符和用户提供的子字符串。所以我一步一步从易到难:
此查询有效并返回所有行:
select s.* from s3object s
好的!让我们继续。我尝试的下一个查询有效并按预期返回 John Smith
select s.* from s3object s where s."last" = 'Smith'
下一步是通过姓氏的子字符串进行尝试。让我们找出所有姓氏以“O”开头的人。
select s.* from s3object s where s."last" like 'O%';
这有效并返回我的数据集中的两个玛丽。
下一步是行不通的。我想查找姓氏以 O 和撇号开头的所有用户。这是我做不到的。我试过了:
select s.* from s3object s where s."last" like 'O'%'
select s.* from s3object s where s."last" like 'O\'%'
select s.* from s3object s where s."last" like "O'%"
它们都不起作用。如何在 s3 select 中将单引号 (') 放在字符串文字中?