在AWS GLUE pyspark中运行自定义MYSQL查询

ev7lccsx  于 2023-11-16  发布在  Spark
关注(0)|答案(2)|浏览(167)

我有一个用例,在mysql表中插入一行后,我想取回最后插入行的id。我想在aws glue中运行一个MYSQL查询。我是pyspark的新手,无法找到一个相同的整体。下面是连接到db的代码。我的自定义查询

INSERT INTO users (name,email) VALUES ('abc1234','[email protected]');
SELECT LAST_INSERT_ID();

个字符

hfyxw5xn

hfyxw5xn1#

使用mysql ucan create id with credit_INCREMENT

CREATE TABLE table_name (
 id MEDIUMINT NOT NULL AUTO_INCREMENT,
 name CHAR(30) NOT NULL,
 PRIMARY KEY (id));

字符串
然后你可以使用dynamicframe的filter():

# Filter records based on the maximum value of a column
max_value = source_dynamic_frame.max('id')
filtered_dynamic_frame = dynamic_frame.filter(lambda x: x['id'] == max_value)

dtcbnfnu

dtcbnfnu2#

方案一:

检查此:Define connection options
你可以添加sampleQuery属性,你可以添加自定义查询。

方案二:(待勾)

你可以在dbtable中指定你的查询,例如

source_connection_mysql_options = {
  "url": source_connection_url,
  "dbtable": "(SELECT LAST_INSERT_ID()) AS lastInserted",
  "user": source_user,
  "password": source_password
}

字符串

方案三:

基于您的自定义查询创建Mysql视图,您将在Glue中使用该查询作为源代码

相关问题