这个Python / SQL代码有什么作用?

时间:2016-03-23 01:29:38

标签: python sql

因此,如果有人了解动物收容所经理,我正在寻求帮助。我试图找出每行代码的含义......第一行是

来自animalcontrol.py

def get_animalcontrol_query(dbo):
  return "SELECT ac.*, ac.ID AS ACID, s.SpeciesName, x.Sex AS SexName, " \
    "co.OwnerName AS CallerName, co.HomeTelephone, co.WorkTelephone, co.MobileTelephone, " \
    "o1.OwnerName AS OwnerName, o1.OwnerName AS OwnerName1, o2.OwnerName AS OwnerName2, o3.OwnerName AS OwnerName3, " \
    "o1.OwnerName AS SuspectName, o1.OwnerAddress AS SuspectAddress, o1.OwnerTown AS SuspectTown, o1.OwnerCounty AS SuspectCounty, o1.OwnerPostcode AS SuspectPostcode, " \
    "o1.HomeTelephone AS SuspectHomeTelephone, o1.WorkTelephone AS SuspectWorkTelephone, o1.MobileTelephone AS SuspectMobileTelephone, " \
    "vo.OwnerName AS VictimName, vo.OwnerAddress AS VictimAddress, vo.OwnerTown AS VictimTown, vo.OwnerCounty AS VictimCounty, vo.OwnerPostcode AS VictimPostcode," \
    "vo.HomeTelephone AS VictimHomeTelephone, vo.WorkTelephone AS VictimWorkTelephone, vo.MobileTelephone AS VictimMobileTelephone, " \
    "ti.IncidentName, ci.CompletedName, pl.LocationName " \
    "FROM animalcontrol ac " \
    "LEFT OUTER JOIN species s ON s.ID = ac.SpeciesID " \
    "LEFT OUTER JOIN lksex x ON x.ID = ac.Sex " \
    "LEFT OUTER JOIN owner co ON co.ID = ac.CallerID " \
    "LEFT OUTER JOIN owner o1 ON o1.ID = ac.OwnerID " \
    "LEFT OUTER JOIN owner o2 ON o2.ID = ac.Owner2ID " \
    "LEFT OUTER JOIN owner o3 ON o3.ID = ac.Owner3ID " \
    "LEFT OUTER JOIN owner vo ON vo.ID = ac.VictimID " \
    "LEFT OUTER JOIN pickuplocation pl ON pl.ID = ac.PickupLocationID " \
    "LEFT OUTER JOIN incidenttype ti ON ti.ID = ac.IncidentTypeID " \
    "LEFT OUTER JOIN incidentcompleted ci ON ci.ID = ac.IncidentCompletedID"

return "SELECT ac.*, ac.ID AS ACID,意味着什么。

如果我想将此代码与目前的代码区别开来,我将不得不改变。 ei" ac。"或" ACID"

我知道我必须改变def get_animalcontrol_query(dbo):

1 个答案:

答案 0 :(得分:0)

您引用的代码是从animalcontrol表中选择所有行并加入物种,lksex,所有者,pickuplocation,incidenttype和incidentcompleted表中包含的所有数据。基本上,它从动物控制表中获取所有信息,并在每个其他表中查找相关信息,然后将所有这些结果返回给用户。有关“LEFT OUTER JOIN”的更多信息,请参阅:http://www.1keydata.com/sql/left-outer-join.html该查询还对列名http://www.w3schools.com/sql/sql_alias.asp进行“别名”处理,以便结果对用户有意义。

如果要更改此代码,您应该学习一些基本的SQL,以便了解您正在更改的内容。