我对Python非常非常陌生。
我已经建立了所有连接,并且能够运行将表写入Oracle SQL环境的SQL查询。
我想要做的是:我希望能够运行SQL查询,并将结果的输出设置为Python中已定义的变量。
例如:从Address_Table where Store = 1234选择不同的经度、纬度
我希望该查询的输出是一个变量,然后可以在Python中使用它,如下所示:
address_long_lat = SQL_Execute("Select Distinct Longitude, Latitude From Address_Table where Store = 1234"
我想使用python从.sql文件执行一个SQL查询。这个查询足够大,这就是为什么我把它放在一个文件中(比如run_query.sql)。我能够读取并执行查询,但是如果我想根据python参数更改查询,是否有更好的方法可以动态编辑sql文件?例如,我希望编辑sql文件,以便其中的内容产生以下查询:
SELECT name, age FROM biodata WHERE name IN ('SAM','JOY','JHON') AND palce='BLACKTOWN'
因此,我想要的python函数将接受如下参数:
def my_
我正在尝试访问Airflow任务中的外部文件以读取一些sql,但我得到的结果是“找不到文件”。有没有人见过这个?
from airflow import DAG
from airflow.operators.python_operator import PythonOperator
from datetime import datetime, timedelta
dag = DAG(
'my_dat',
start_date=datetime(2017, 1, 1),
catchup=False,
schedule_interval=timed
我希望将oracle-sql查询保留在python循环中。因此,很少需要在sql查询中放置python变量。下面是我的代码:
import pandas as pd
import cx_Oracle
for i in range(df.shape[0]):
a=df.iloc[i,0]
b=df.iloc[i,1]
c=df.iloc[i,2]
d=df.iloc[i,3]
con = cx_Oracle.connect('xyz', encoding='utf-8')
我想在python中执行sql查询。我可以使用cx_oracle连接python中的数据库:
# Build connection
conn_str = u'username/password@host:1521/sid'
conn = cx_Oracle.connect(conn_str)
现在,我试图使用Python中的SQL查询从数据库中检索数据:
sql_select_statement = """SELECT * FROM TABLE
WHERE DATE BETWEEN '20-oct-2017' AND '30-o
我正在做一个python程序,使用impala for sql。我正在连接到一个数据库,并且我一直在运行一系列查询。我做的第一件事是从原始数据库中提取元素并将其存储到python列表中,在该列表中,我将列表中的元素分配到变量(variable1, variable2)中。当我的SQL查询只有一行时,我可以引用python代码中的变量,但是在通过union连接这两个查询的语法时遇到了麻烦,这是我下一步需要做的。将查询(如下所示)连接在一起的语法是什么?我正在尝试弄清楚联合的语法。
cursor.execute("SELECT * from database where database
我是python的新手,我来自PHP的国度。我根据自己的PHP知识用python构建了一个类似这样的SQL查询,得到了警告和错误
cursor_.execute("update posts set comment_count = comment_count + "+str(cursor_.rowcount)+" where ID = " + str(postid))
# rowcount here is int
形成查询的正确方式是什么?
另外,如何转义字符串以形成SQL安全字符串?例如,如果我想转义-,',“等等,我经常使用地址斜杠,我们在python
我正在尝试从python中查询salesforce对象。查询字符串包含‘单引号,因此自动添加转义字符,并且由于在查询中添加了\反斜杠转义字符而失败
name=David's
sql_query = (
f"SELECT Id FROM contact WHERE Name = '{name}'"
)
Expected string output:
sql_query = SELECT Id FROM contact WHERE Name = 'David's'
Actual strin
我有一个MySQL查询,它使用变量生成计数器:
select
zz.work_order,
zz.op_number,
@num := if(@wo = zz.work_order, @num+1,1) as 'steps_away',
@wo := zz.work_order as 'dummyWO'
from
(
select
w.work_order,
w.op_number
from
[sql cut]
order by
w.work_order asc,
r.op_
我有两个python函数直接查询数据库。有没有办法将这两个函数连接到python中?
我想做几个联接,不太确定如何在python中这样做。
查询1:
def query1(businessDate):
con = pyodbc.connect(r'DSN='+'Stack',autocommit=True)
print('working')
#businessDate = r"'2019-03-13'"
#remember business date should be ente
我正在尝试将开始日期和结束日期作为python中生成数据帧的长SQL查询中的变量。我已经看过了关于这个问题的其他帖子,并尝试了我所知道的一切,但我得到了错误,而且没有一个有效。我缩短了sql查询,只显示相关的部分。有没有人能给我一些建议?我认为这个问题可能与日期的格式有关。 def get_dataframe():
startdate = 'input_startdate'
enddate = 'input_enddate'
query="""
where date be
在perl/python DBI中,有一种机制可以安全地插入sql查询的参数。例如,在python中,我会这样做:
cursor.execute("SELECT * FROM table WHERE value > ?", (5,))
其中,execute方法的第二个参数是要添加到sql查询中的参数元组
R的DBI兼容API是否有类似的机制?我见过的示例从未显示过传递给查询的参数。如果没有,那么将参数插入到查询中最安全的方法是什么?我特别考虑使用RPostgresSQL。
我有一个使用cx_Oracle从python脚本执行的sql语句。该语句包括两个子查询,如下所示:
select distinct
us.firstname as "Vorname",
us.lastname as "Nachname",
us.email as "Email",
us.loginname as "Q-Nummer",
us.status,
us.lastlogintime
from
user_table us
where
us.lastlogintime >= add_months(tru
我正在编写一个运行一些SQL查询的python脚本。然而,被查询的表格将在半定期的基础上发生变化。为了使脚本更方便用户,我想将表名存储在一个变量中。
到目前为止,我的代码如下所示:
import pandas as pd
V_pct = "UACO_PCT0000003221"
V_contact_df = pd.read_sql_query(
sql = """"
SELECT DATE(CONTACTDATETIME) AS CONTACT_DATE
FROM AF.{V_pct}
GROUP BY DATE(CONTACTDATETIM
我有一个复杂的SQL Server查询,我想从Python中执行该查询,并以Pandas DataFrame的形式返回结果。 我的数据库是只读的,所以我没有像其他答案那样的很多选择,比如进行不太复杂的查询。 This answer was helpful,但我一直收到TypeError: 'NoneType' object is not iterable SQL示例 这不是真正的查询-只是为了证明我有临时表。使用全局临时表,因为我的查询以前使用本地临时表失败:See this question SET ANSI_NULLS ON
SET QUOTED_IDENTIFIER O
我的python脚本中有一个以以下查询开头的SQL查询:
query = """
DECLARE @StartDate AS Date
SET @StartDate = '2018-10-31'
SELECT ...
FROM ...
...
"""
在python脚本的末尾,im创建了两个csv文件:
df.to_csv('C:/path/a_05-11-18.csv', sep=",",
encoding='utf-8', i
我使用的SQL查询只对where子句进行了更改。我希望将SQL查询存储为一个变量,并将每个where子句存储为单独的变量。
下面给出了我正在使用的SQL查询:
问题1:
select a.prod_name,a.prod_cat,b.sale_date
from products a
join sales b on a.id = b.sale_id and b.type=new
问题2:
select a.prod_name,a.prod_cat,b.sale_date
from products a
join sales b on a.id = b.sale_id and
类似这样的查询:
query = "SELECT user_id FROM users WHERE lang = %s ORDER BY CASE WHEN %s <> NULL THEN location <-> %s ELSE RANDOM() END LIMIT 1"
query(query, lang, location, location)
可以写成(使用python):
location = ...
order = "RANDOM()" if location is None else "location <-&
IF NOT EXISTS(SELECT * FROM `user` WHERE `name`='Rutvij' AND `lang`='python')
BEGIN
INSERT INTO `user` VALUES ('Rutvij', 'python', 25)
END
ELSE
BEGIN
UPDATE user SET `name`='Kanzaria' WHERE `name`='Rutvij'
END
我正在phpmyad
我有一个带有许多原始sql查询的文件,它使用文本替换,即
select * from table1 where date_col between '%%from_date%%' and '%%to_date%%'
然后,使用函数将这些%%date_from%%和%%date_to%%替换为值。这很好,查询也能工作。但是,它并不理想,因为它可以向sql注入开放。(不,我不能使用模型或原始sql之外的任何东西),更糟糕的是,我不能使用%s和参数化查询,因为变量更改顺序,%s按顺序工作(据我所知)
我考虑使用声明,以便在select块的开头有我的变量,例如
sql -
我试图从python中查询mysql db,但是在生成通配符%和python的%s的查询时遇到了问题。
query = '''select * from db where name like'Al%' and date = '%s' ''', myDateString
我犯了个错误
cursor.execute(s %'2015_05_21')
ValueError:索引36处不支持的格式字符‘’(0x27) (%的位置)
如何将python2.7字符串胀形和sql通配符结合起来?(实际查询的时间要
我使用的是SQL Developer。当我想要绑定值的时候。通常我使用以下语法:
SELECT * FROM table WHERE column = :bindvalue
但是,我不知道如何在字符串中这样做。以下查询不起作用。
SELECT * FROM table WHERE column like '%:bindvalue%'
为什么我需要它?因为我的程序在python中运行一个查询,并将一些内容分配给绑定变量:
curr.execute('''SELECT * FROM table WHERE column'