【问题标题】:Need assistance with if statement in Python code for SQL需要有关 SQL 的 Python 代码中的 if 语句的帮助
【发布时间】:2020-06-03 02:44:51
【问题描述】:

如果我想使用 if 语句过滤我的表,我将如何去做。

我有一个我想做的例子,但不知道如何实现。

我想根据客户订单处于活动/不活动的事实提取一些值。

由于我的 sql 列是位值类型,我只想显示基于活动(列值为 0)订单的“订单”。

下面是我提取零件号、客户号、订单号的代码行:

for row in cur:
    custOrders = CST.OrderLog(row[22], row[23], row[39])
    listofCustOrders.append(custOrders)
return listofcustOrders

row22 是我的零件号 row23 是我的客户编号 row39 是我的客户订单号

我需要根据仅包含 0,1,NULL 值的活动/非活动列(行 [2])对我的客户订单号进行排序。

任何想法,我以前没有使用过关于 SQL 连接的 if 语句。

谢谢

【问题讨论】:

  • 为什么不在你的 SQL 中使用 WHERE 语句,而不是一开始就获取不活跃客户的数据?

标签: python sql if-statement


【解决方案1】:

你为什么不试试 cur.execute('SELECT column_name FROM table_name WHERE row[2]_column_name = ?',(variable, )) 您可以根据需要将变量设置为 0、1 或 NULL。这个'cur'你也可以在for循环中使用。

【讨论】:

  • 这很好用,当然我没有想过使用它。
【解决方案2】:

我认为最好的解决方案是在 sql 查询中进行排序。

如果只是按“列名”的顺序不是您要查找的,您可以在查询中使用 case 语句对其进行排序。

见:CASE WHEN statement for ORDER BY clause

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多