我正在尝试编写一个SELECT语句来选择字段的总和,但我想返回小于30的数字之和以及大于30的数字之和.我意识到我可以将两个选择连接在一起,但是我希望能找到一种"整洁"的方式.
对不起,如果标题不清楚.基本上我正在尝试从多个表中选择某些记录,然后为返回的记录更新某个列值.
T-SQL实现
UPDATE
CUSTOMERS
SET
LIKES_US = 'Y'
FROM
RESTAURANT REST INNER JOIN CUSTOMERS CUST ON REST.LINK_ID = CUST.LINK_ID
WHERE
REST.REST_TYPE = 'Diner' AND CUST.LIKES_US IS NULL
Run Code Online (Sandbox Code Playgroud)
神谕
UPDATE
(SELECT CUST.LIKES_US
FROM CUSTOMERS CUST INNER JOIN RESTAURANT REST ON CUST.LINK_ID=REST.LINK_ID
WHERE REST.REST_TYPE = 'Diner' AND CUST.LIKES_US IS NULL) NEW_CUST
SET
NEW_CUST.LIKES_US = 'Y';
Run Code Online (Sandbox Code Playgroud)
我尝试在Teradata中做同样的事情,就像我在Oracle中做的那样但是我收到以下错误:
Executed as Single statement. Failed [3707 : 42000] Syntax error, expected something like a name or a Unicode delimited identifier or an 'UDFCALLNAME' keyword between the …Run Code Online (Sandbox Code Playgroud) 我正在大型数据库中搜索长度在5到7个字符之间的单词列表。到目前为止,我有:
Select *
from sometable
Where upper("Description") like any ("%ABC_123%", "%ABC_124%", "%DE_25%")
Run Code Online (Sandbox Code Playgroud)
我还想返回在查询中找到的单词,但是在不复制subtr函数中的单词列表的情况下,如何执行此操作会陷入困境。
这样做可能有更好的方法,我希望能有一些指导。
有没有办法在视图中获取列名和数据类型Teradata SQL Assistant 15.0?
在Oracle 11g你可以做类似的事情desc tablename 并获得以下的脚本结果集:
名称空类型
test_id NOT NULL NUMBER(19)
test_name VARCHAR2(255)
test_department VARCHAR2(255)
test_year TIMESTAMP(6)
test_external_id NUMBER(10)
到目前为止,我已经尝试过help view viewname,结果提供了所有列名,但数据类型的值都是空值.
我在Teradata有一张桌子.我想知道它的大小.对Teradata中的数据库来说,同样的事情可能会很有趣.
我该怎么做?
我正在尝试创建随机数据并将其插入表中.现在只是想想完成这项工作的有效方法是什么.例如
Create volatile table mytb , no fallback, no journal
( C1 integer not null
C2 Varchar (50) Not null ,
C3 D1 Date Not null,
C4 D2 date not null
) with data primary index ( c1) on commit preserve rows;
Run Code Online (Sandbox Code Playgroud)
我想要的是为每个列值的特定List或范围的X迭代随机插入值.例如C1范围在30到3000000之间C2是一个列表('已批准','待定','未知','有争议','wip','已处理','已预处理','已拒绝')等等C3是01-01-1999到2015年3月12日之间的日期等等.然后说100万次迭代我想为这些列插入随机值并为某些值创建一个SKEW-这些值应该是丰富的与其他人相比.有人曾经对此进行过挖掘.最好的方法是什么 - 递归Q逻辑?
我正在尝试将 R 连接到 Teradata,但不确定RODBC::odbcDriverConnect(). 有一个 teradataR 包,但它仅用于 R 版本 3 及以下版本,我既没有也不想切换到。下面是使 ODBCDriverConnect 工作的输入参数列表。“连接”我认为是最重要的。我需要一个司机的地址,我什至不知道我有没有。这是我最需要帮助的。如何获取 Teradata 驱动程序以连接到 R?我工作中的 IT 不确定如何执行此操作。另外,如果有人知道将 Teradata 连接到 R 的另一种方法(其他一些软件包?),请告诉我。
connection = ""
case
believeNRows = TRUE
colQuote, tabQuote = colQuote
interpretDot = TRUE
DBMSencoding = "",
rows_at_time = 100
readOnlyOptimize = FALSE
Run Code Online (Sandbox Code Playgroud)
感谢您的帮助!
根据我迄今为止的研究,这个字符表示数据库和前端之间的编码错误。不幸的是,我对其中任何一个都没有任何控制权。我正在使用 Teradata Studio。
如何过滤掉这个字符?我正在尝试对REGEX_SUBSTR偶尔包含 的列执行一个函数?,这会引发错误“字符串包含不可翻译的字符”。
这是我的 SQL。AIRCFT_POSITN_ID是包含替换字符的列。
SELECT DISTINCT AIRCFT_POSITN_ID,
REGEXP_SUBSTR(AIRCFT_POSITN_ID, '[0-9]+') AS AUTOROW
FROM PROD_MAE_MNTNC_VW.FMR_DISCRPNCY_DFRL
WHERE DFRL_CREATE_TMS > CURRENT_DATE -25
Run Code Online (Sandbox Code Playgroud) 目标--> 我正在尝试使用Python自动化查询执行过程
详细信息--> 我的源是Teradata数据库,目标是.txt文件
我正在编写 Python 代码以在 Teradata 中运行查询并将输出保存在 .txt 文件中。
问题--> 尽管我能够运行查询并保存输出,但日语字符显示为“\x1a\x1a”
对于前。当我运行查询时,我在 Teradata SQL Assistant 窗口中看到的输出是“????”? 而文本文件中的输出是“\x1a\x1a”
我正在使用“PYCharm”进行编码
我正在使用下面的代码进行编写文件
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import io
import pyodbc
import os
#Establish connection with Teradata
conn = pyodbc.connect('Coneection Parameters')
conn.setencoding(encoding='utf-8')
cur = conn.cursor()
conn.setdecoding(pyodbc.SQL_CHAR, encoding='utf-8')
#Reading Query
scriptFile = open('query.sql','r')
script = scriptFile.read()
scriptFile.close()
#Executing Query
cur.execute(script)
rows = cur.fetchall()
#Writing the output to file
with open('results.txt','w') as …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用JayDeBeApi包在Python 3 中连接到Teradata数据库。这是使用Flask和Flask-Restplus的 API 项目的一部分
这是重现该问题的最小工作示例。在终端窗口中,键入以下命令来设置您的工作站:
# Install JVM
sudo apt-get install default-jre
# Create Python virtual environment
sudo apt-get install python3-venv
python3 -m venv jdbc
source jdbc/bin/activate
# Install Python packages in virtual environment
pip3 install --upgrade pip
pip3 install jaydebeapi
pip3 install flask
Run Code Online (Sandbox Code Playgroud)
使用以下内容创建文件 app.py:
from flask import Flask
import jaydebeapi
app = Flask(__name__)
def get_jdbc_connection():
connection = jaydebeapi.connect(
'com.teradata.jdbc.TeraDriver',
'jdbc:teradata://edw-dev.company.org',
{'user': 'LOGIN', 'password': 'PASSWORD', 'tmode': 'TERA', …Run Code Online (Sandbox Code Playgroud) teradata ×10
sql ×6
oracle ×2
database ×1
file-io ×1
flask ×1
jaydebeapi ×1
jdbc ×1
odbc ×1
oracle11g ×1
performance ×1
python ×1
python-3.x ×1
r ×1
rodbc ×1
search ×1
sql-tuning ×1
text ×1
utf-8 ×1