Python/SQL 服务器 - SELECT 问题中的子查询
Python/SQL Server - Subquery inside of a SELECT problem
我试着让我的查询更好一点,也试着减少我代码中的查询数量。
所以我偶然发现了子查询。我现在想要实现的是我 SELECT 我的实体中的 BankID Table 并且我直接想要在我的银行 Table 中获取 BankID 的名称。
我将 Python 和 SQL 服务器与池数据库一起使用。如果我遗漏了什么,请告诉我!
目前我的代码正在获取 ID:
import DB_Pool
ms = DB_Pool.Database()
entity_id = 1
entity_data = ms.ExecQuery("SELECT Name,BankID FROM Entity WHERE EntityID = ? AND IsCurrent = 1",(entity_id,))
print(entity_data)
这工作正常。
但我不知道在哪里添加 BankName SELECT 和我从实体 Table 获得的 BankID?
您似乎在寻找 join
。假设 Entity
和 Bank
通过列 BankID
关联,那就是:
SELECT e.Name entityName, e.BankID, b.Name bankName
FROM Entity e
INNER JOIN Bank b on b.BankID = e.BankID
WHERE e.EntityID = ? AND e.IsCurrent = 1
我试着让我的查询更好一点,也试着减少我代码中的查询数量。 所以我偶然发现了子查询。我现在想要实现的是我 SELECT 我的实体中的 BankID Table 并且我直接想要在我的银行 Table 中获取 BankID 的名称。
我将 Python 和 SQL 服务器与池数据库一起使用。如果我遗漏了什么,请告诉我!
目前我的代码正在获取 ID:
import DB_Pool
ms = DB_Pool.Database()
entity_id = 1
entity_data = ms.ExecQuery("SELECT Name,BankID FROM Entity WHERE EntityID = ? AND IsCurrent = 1",(entity_id,))
print(entity_data)
这工作正常。
但我不知道在哪里添加 BankName SELECT 和我从实体 Table 获得的 BankID?
您似乎在寻找 join
。假设 Entity
和 Bank
通过列 BankID
关联,那就是:
SELECT e.Name entityName, e.BankID, b.Name bankName
FROM Entity e
INNER JOIN Bank b on b.BankID = e.BankID
WHERE e.EntityID = ? AND e.IsCurrent = 1