我正在尝试使用 AWS S3SelectObjectContent和 SQL 表达式从以 CSV 格式存储的数据中发出选择请求。我正在使用 Laravel 6。
当我从对象 ( ) 请求所有数据时'Expression' => 'SELECT * from S3Object',一切正常。我检索数据并可以使用它。WHERE当我想在 SQL 表达式中使用 -clause 时,就会出现问题。
这是我的代码:
$client = new S3Client([
'region' => 'us-east-2',
'version' => 'latest',
]);
$results = $client->selectObjectContent([
'Bucket' => 'mybucketname',
'Key' => 'my_data_file.csv',
'ExpressionType' => 'SQL',
'Expression' => 'SELECT * FROM S3Object s WHERE s.continent = "Europe"',
'InputSerialization' => [
'CSV' => [
'FileHeaderInfo' => 'USE',
'RecordDelimiter' => "\n",
'FieldDelimiter' => ',',
],
], …Run Code Online (Sandbox Code Playgroud)