我想在特定日期之后获取对象。使用 AWS CLI,我可以使用以下命令列出对象:
aws s3api list-objects-v2 --bucket "bucket1" --prefix "file-" --query "(Contents[?LastModified>'2019-02-06T05:34:12.000Z'])[0]"
但我想从我的代码中执行此操作,因此请让我知道如何使用 NPM AWS-SDK 过滤对象。
注意:我可以使用exec
或来完成此操作spawn
,但为此我必须使用 CLI 配置配置文件,这将在本地创建凭证文件,所以我不想这样做。
按照此链接中提到的方法,我想ORDER BY
动态地传递和排序函数。
ORDER BY
工作正常,但我无法通过排序顺序(ASC
/ DESC
)。
我现在所拥有的:
CREATE OR REPLACE FUNCTION list(_limit integer,_offset integer,sort_by varchar(100), _order varchar(100),_category varchar(100))
RETURNS TABLE(
id INTEGER,
name VARCHAR,
clientname VARCHAR,
totalcount BIGINT
) AS $$
DECLARE empty text := '';
BEGIN
RETURN Query EXECUTE
'SELECT d.id,
d.name,
d.clientname,
count(*) OVER() AS full_count FROM design_list as d
where ($5 = $6 Or d.category Ilike $5)
ORDER BY ' || quote_ident(sort_by) || ' LIMIT $1 offset $2'
USING _limit,_offset,sort_by, …
Run Code Online (Sandbox Code Playgroud) 我想将此查询创建为参数化查询.
var query = ["Match (name:Name)-[r:IN_CLASS]->(class:Class)-[r1:HAS_STUDENTS]->(s:Student) where id(s)=",rollno," and lower(s.Name)=~'.*",name,".*' RETURN id(s),s.Name limit 5"].join('');
Run Code Online (Sandbox Code Playgroud)
我试过这段代码,但它给出了错误:
var query = ["Match (name:Name)-[r:IN_CLASS]->(class:Class)-[r1:HAS_STUDENTS]->(s:Student) where id(s)=",rollno," and lower(s.Name)=~'.*{name}.*' RETURN id(s),s.Name limit 5"].join('');
db.query(query , {name : name} , function(err,results){
if (err) return callback(err);
if(results){
return callback(null,results);
}
else{
return callback(null,false);
}
});
Run Code Online (Sandbox Code Playgroud)
请告诉我哪里错了?
amazon-s3 ×1
aws-lambda ×1
aws-sdk ×1
dynamic-sql ×1
neo4j ×1
node.js ×1
plpgsql ×1
postgresql ×1
sql-order-by ×1