gpt4 book ai didi

sql - Azure SQL 数据库的一列显示已排序

转载 作者:行者123 更新时间:2023-12-03 03:08:35 25 4
gpt4 key购买 nike

我在 Azure 中有一个 SQL 数据库,如下面的链接所示。我正在使用 pyodbc 在 python 中制作一个小程序来更新数据库中人员的 Elos。我创建了三个连接对象(每个看到的列一个),并使用 while 循环进行迭代。

它将接受用户的输入,进行迭代,直到找到输入的 ID 代码,并且由于所有游标都在同一个 while 循环中,因此评级和名称游标将始终位于同一行。

/image/ZssyW.png

除非出于某种原因,ID 列已排序。左表是 Microsoft Sql Server Management Server 的屏幕截图,右表是三个游标每次迭代并打印时发生的情况。

我该如何解决这个问题/是什么原因导致的?

这是我的代码(相关部分):

current_id = (ID_cursor.execute("SELECT LocalID FROM MEMBERS"))
current_rating = (rating_cursor.execute("SELECT Rating FROM MEMBERS"))
current_firstname = (firstname_cursor.execute("SELECT FirstName FROM MEMBERS"))

counter = 0
while counter < 10:
counter += 1
temp_id = ID_cursor.fetchone()[0]
temp_rating = rating_cursor.fetchone()[0]
temp_firstname = firstname_cursor.fetchone()[0]

print(temp_id, temp_firstname, temp_rating)

print("end")

最佳答案

ORDER BY 子句应用于所有三个查询,以便它们以相同的方式排序。我假设 LocalID 是您的主键身份列?

current_id = (ID_cursor.execute("SELECT LocalID FROM MEMBERS ORDER BY LocalID"))
current_rating = (rating_cursor.execute("SELECT Rating FROM MEMBERS ORDER BY LocalID"))
current_firstname = (firstname_cursor.execute("SELECT FirstName FROM MEMBERS ORDER BY LocalID"))

如果没有指定 ORDER BY 子句,SQL Server 可能会按 SELECT 语句中的列进行排序。

关于sql - Azure SQL 数据库的一列显示已排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41941238/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com