小编Aro*_*mal的帖子

粘合作业成功,但没有数据插入到目标表中 (Aurora Mysql)

我使用如下所示的视觉选项卡创建了一个粘合作业。首先,我连接到一个 mysql 表作为数据源,该表已经在我的数据目录中。然后在转换节点中,我编写了一个自定义 SQL 查询以仅从源表中选择一列。通过数据预览功能进行验证,转换节点工作正常。现在我想将数据写入只有一列“字符串”数据类型的现有数据库表。粘合作业成功,但我没有看到表中的数据。

在此输入图像描述 下面是从 Glue Job Visual 生成的自动脚本。

import sys
from awsglue.transforms import *
from awsglue.utils import getResolvedOptions
from pyspark.context import SparkContext
from awsglue.context import GlueContext
from awsglue.job import Job
from awsglue import DynamicFrame


def sparkSqlQuery(glueContext, query, mapping, transformation_ctx) -> DynamicFrame:
    for alias, frame in mapping.items():
        frame.toDF().createOrReplaceTempView(alias)
    result = spark.sql(query)
    return DynamicFrame.fromDF(result, glueContext, transformation_ctx)


args = getResolvedOptions(sys.argv, ["JOB_NAME"])
sc = SparkContext()
glueContext = GlueContext(sc)
spark = glueContext.spark_session
job = Job(glueContext)
job.init(args["JOB_NAME"], args)

# Script generated for node MySQL …
Run Code Online (Sandbox Code Playgroud)

mysql amazon-web-services amazon-aurora aws-glue aws-glue-data-catalog

6
推荐指数
1
解决办法
1418
查看次数

union/union all 查询中的别名 - SQL Server

我有一个简单的sql语句如下

情况1:

select 1 as a 
union  
select 2 as a
Run Code Online (Sandbox Code Playgroud)

输出:此案例按预期工作

在此输入图像描述

案例2:

select 1 as a 
union  
select 2 as b
Run Code Online (Sandbox Code Playgroud)

输出:虽然我的第二个选择中的别名是“b”,但它仍然显示别名“a”。

为什么它不能从第二个 select 语句中获取别名?

我们如何让 sql 从第二个 select 查询中选择别名?

在此输入图像描述

案例3:

select 1 
union  
select 2 as b
Run Code Online (Sandbox Code Playgroud)

输出:即使我上面的第一个 select 语句没有任何别名,但第二个 select 语句仍然有,为什么结果仍然显示“无列名”?

在此输入图像描述

t-sql sql-server

5
推荐指数
2
解决办法
2万
查看次数