我需要将 Excel 工作表中的数据插入到 teradata 表中。我需要使用宏来完成这项工作。
我在 Excel 表中有数据,例如
COL1 COL2 COL3 COL4 1 2 3 4 2 5 8 10 . .很快
我需要在 Excel 工作表中保留一个按钮并为该按钮分配一个宏,以便当我单击该按钮时,Excel 工作表中的行应插入到数据库表中。
要求是我将空的excel表发送给该人,他将用数据填充该表,然后单击excel中的按钮,数据必须插入到数据库表中。我更喜欢使用宏来做到这一点..
谢谢大家。
我试图按两次分组,一次按单个级别字段分组,然后按时间戳字段的月份分组。
对 SQL 不太陌生,但这是我在阅读另一篇 SO 帖子后想到的:SQL query to group by Month part of timestamp
SELECT
VwNIMUserDim.USER_EMAIL_ADDRESS,
VwNIMEventFct.NIM_USER_ID,
SUM(CASE WHEN NIM_EVENT_TYPE_ID = 880 THEN 1 ELSE 0 END) AS APP_OPEN,
SUM(CASE WHEN NIM_EVENT_TYPE_ID = 881 THEN 1 ELSE 0 END) AS AUTODL_SETTINGS_SAVE,
SUM(CASE WHEN NIM_EVENT_TYPE_ID = 882 THEN 1 ELSE 0 END) AS AUTO_QUERY_CONFIRM,
SUM(CASE WHEN NIM_EVENT_TYPE_ID = 883 THEN 1 ELSE 0 END) AS ISSUE_CLOSE,
SUM(CASE WHEN NIM_EVENT_TYPE_ID = 884 THEN 1 ELSE 0 END) AS ISSUE_DOWNLOAD,
SUM(CASE WHEN …Run Code Online (Sandbox Code Playgroud) 我希望使用Teradata在"时间"为时间戳的情况下每小时对一个卷进行分组(6)
SELECT VOLUME, HOUR(time)
FROM table
GROUP BY HOUR(time)
Run Code Online (Sandbox Code Playgroud) 我正在使用该PyTd teradata模块从 Teradata 查询数据并希望将其读入 Pandas DataFrame
import teradata
import pandas as pd
# teradata connection
udaExec = teradata.UdaExec(appName="Example", version="1.0",
logConsole=False)
session = udaExec.connect(method="odbc", system="", username="", password="")
# Create empty dataframe with column names
query = session.execute("SELECT TOP 1 * FROM table")
cols = [str(d[0]) for d in query.description]
df = pd.DataFrame(columns=cols)
# Read data into dataframe
for row in session.execute("SELECT * FROM table"):
print type(row)
df.append(row)
Run Code Online (Sandbox Code Playgroud)
row属于teradata.util.Row class并且不能附加到数据帧。我尝试将其转换为列表,但格式混乱。
如何使用该teradata模块将数据从 Teradata 读入数据帧?我无法为此使用该pyodbc模块。 …
我在Teradata中有一个大表,每天都会将新数据加载到它中.它有一个名为CAL_DTrow 的列,即行加载到表中的日期.我想写一个查询,它会给我每天的平均行数,这样我就可以看到一天中通常会加载多少数据.
我经常在Teradata SQL助手中使用此功能:
row_number() over(partition by X||Y order by Z desc) = 1
Run Code Online (Sandbox Code Playgroud)
我的同事使用相同的BUT,不同之处在于他没有输入“ ||” 在两个属性之间,他只需输入“,”。我同时测试了一些小数据,但在输出中找不到任何差异。
我的假设是使用“ ||” 是两个属性(X和Y)的串联。这是真的吗?
现在有人“ ||”之间有什么区别 和“,”在此命令?
提前谢谢了..
在Teradata,哪个更有效 - Sample 或 Top?
Teradata做更少的工作并导致更快的回报?
通常,我只想看到几行。
我试图实现以下但面临错误,如在where子句中不允许的订单分析功能
select a.araccno,a.ARBDTE,
sum(aramt) over( partition by araccno,ARBDTE ORDER BY ARAMT asc) sum1
,sum(b.Bill_Stmt_Discount_Amt) over( partition by b.bill_statement_id order by b.Bill_Stmt_Discount_Amt asc) sum2
from stg.ars_etl a
left outer join tgt.bill_sta_dis b
on 'LL'||a.araccno||a.arbdte=b.bill_statement_id
where sum1<> sum2
Run Code Online (Sandbox Code Playgroud)
我怎样才能在Teradata中实现这一目标?
非常感谢!!
我使用下面的代码从 teradata 读取数据但出现错误
val jdbcDF = spark.read
.format("jdbc")
.option("url",s"jdbc:teradata://${TeradataDBHost}/database=${TeradataDBDatabase}")
.option("dbtable", TeradataDBDatabase+"."+TeradataDBTable)
.option("driver","com.teradata.jdbc.TeraDriver")
.option("user", TeradataDBUsername)
.option("password", TeradataDBPassword)
.load()
Run Code Online (Sandbox Code Playgroud)
错误堆栈跟踪
val jdbcDF = spark.read
.format("jdbc")
.option("url",s"jdbc:teradata://${TeradataDBHost}/database=${TeradataDBDatabase}")
.option("dbtable", TeradataDBDatabase+"."+TeradataDBTable)
.option("driver","com.teradata.jdbc.TeraDriver")
.option("user", TeradataDBUsername)
.option("password", TeradataDBPassword)
.load()
Run Code Online (Sandbox Code Playgroud) 有谁知道如何在 PyTd Teradata ODBC 模块中使用易失性表?我可以运行单个查询并返回结果,但是如果我尝试使用易变表构建查询,我会不断收到错误消息。有什么帮助吗?我对python相当陌生。
我正在使用
udaExec = td.UdaExec (appName="dpull", version="1.0",logConsole=False)
with udaExec.connect(method="ODBC",dsn="tdata", username="un",
password="pw") as session:
query = """"
create volatile table vol_table
,no fallback, no before journal, no after journal as
(
select a, b, c
from my_table1
)
with data primary index (a)
on commit preserve rows
Select vt.a, vt.b, vt.c, t2.a
from vol_table vt
inner join table2 t2
on vt.anything = t2.anything
""""
df = pd.read_sql(query,session)
Run Code Online (Sandbox Code Playgroud)
错误:
`InterfaceError: ('SQL_INVALID_HANDLE', 'Invalid handle passed to SQLGetDiagRecW.')`
Run Code Online (Sandbox Code Playgroud) 在 SQL 中。如何将 A 列从 (YYYY-MM-DD) 转换为 (YYYYMM)?我想以 YYYYMM 格式而不是 YYYY-MM-DD 显示日期。
数据类型是时间戳。使用 Teradata Studio 15.10.10。
当我使用BigQuery查询这两个表时,似乎这个左连接是没有意义的.它将PD连接到PI上PD.STR_NBR = PI.STR_NBR,然后过滤掉PD.STR_NBR IS NULL.
SELECT
PI.CUST_ORD_NBR AS CUST_ORD_NBR,
PI.STR_NBR AS STR_NBR,
PI.SKU_NBR AS SKU_NBR
FROM
PURCH_ITEM_ID PI
LEFT JOIN
PROF_BID_DTL_W7 PD
ON PD.CUST_ORD_NBR = PI.CUST_ORD_NBR
AND PD.STR_NBR = PI.STR_NBR -- checks equality
AND CAST(PD.SKU_NBR AS STRING) = PI.SKU_NBR
WHERE PD.STR_NBR IS NULL -- filters by null
;
Run Code Online (Sandbox Code Playgroud)
我不知道它是否相关,但我会提到这个BQ代码已经从Teradata sql过渡了.