【问题标题】:How do you select values from a SQL column in Python如何从 Python 中的 SQL 列中选择值
【发布时间】:2021-03-11 17:09:43
【问题描述】:

我在 SQL 数据库中有一个名为 REQUIREDCOLUMNS 的列,其中包含我需要在下面的 Python 脚本中选择的列。

当前代码摘录:

db = mongo_client.get_database(asqldb_row.SCHEMA_NAME)
coll = db.get_collection(asqldb_row.TABLE_NAME) 
table = list(coll.find())
root = json_normalize(table)

SQL 中的REQUIREDCOLUMNS包含值reportIdsiteIdpricelocation

所以不要显式输入:

print(root[["reportId","siteId","price","location"]])

有没有办法做到print(root[REQUIREDCOLUMNS])

注意:(我已经在我的 python 脚本中连接到 SQL 数据库)

【问题讨论】:

    标签: python sql sql-server pandas


    【解决方案1】:

    如果您使用 mysql 或 pymysql ,则必须使用游标,两种语法几乎相似,我将在下面提到 mysql

    import mysql
    import mysql.connector
    
    db = mysql.connector.connect(
       host = "localhost",
        user = "root",
        passwd = "  ",
        database = "  "
    )
    
    cursor = db.cursor()
    sql="select REQUIREDCOLUMNS from table_name"
    cursor.execute(sql)
    required_cols = cursor.fetchall()#this wll give ["reportId","siteId","price","location"] 
    
    cols_as_string=','.join(required_cols)
    new_sql='select '+cols_as_string+' from table_name'
    
    cursor.execute(new_sql)
    result=cursor.fetchall()
    

    这应该可行,我故意将多行分成几行以便理解。 pymysql 的语法可能略有不同

    【讨论】:

    • 所以关于我所指的问题SQL Server 这种方法仍然有效吗?我正在使用pyodbc 连接到SQL Server
    猜你喜欢
    • 1970-01-01
    • 2021-08-05
    • 2010-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多