【问题标题】:Python sql order byPython sql 排序方式
【发布时间】:2018-10-05 13:54:08
【问题描述】:

我的代码:

sql = """
       SELECT  
       seq_no,
       step_name,
       date
       FROM
       tra..trav TR
           INNER JOIN trav..trav_step TS 
               ON TR.tr_OID = TS.tr_OI
           INNER JOIN tra..stp ST 
               ON TS.st_OID = STP.st_OID
       WHERE faci_OID = 0x16C0A 
           and TR.tr_id = '""" + str(request.GET.getlist('TravA')[0]) + "';"

我想按 asc 订购,我在哪里以及如何按语句订购?请帮忙!

提前致谢!

【问题讨论】:

  • 通常你把ORDER BY xyz ASC放在最后——你试过吗?而且我不确定您向查询发送 python 变量的方式是否真的有效...
  • 您不应将请求中的值直接粘贴到 SQL 中。您正在邀请SQL injection
  • 是的,最后添加的顺序不起作用
  • WHERE 子句后添加ORDER BY
  • 你能提供你添加ORDER BY的代码吗?

标签: python sql


【解决方案1】:

ORDER BY 子句在WHERE 子句之后,因此您的 SQL 查询看起来像这样:

SELECT seq_no, 
       step_name, 
       date
  FROM TR
 INNER JOIN TS ON TR.tr_OID = TS.tr_OI
 INNER JOIN ST ON TS.st_OID = STP.st_OID
 WHERE faci_OID = '0x16C0A'
   AND TR.tr_id = (???)
 ORDER BY seq_no ASC;

您可以在此处找到更多信息: https://www.techonthenet.com/oracle/order_by.php

在 Python 中包含它是一个不同的问题。

希望我能帮上忙!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-20
    • 2012-08-30
    • 2021-06-26
    • 1970-01-01
    • 2018-09-23
    相关资源
    最近更新 更多