我在尝试运行sql语句时随时都会收到此错误。可能有什么不对?
不明确的列名称' trafficCrashReportId'。
答案 0 :(得分:3)
两个表格中都存在trafficCrashReportId
(InvolvedVehicle
和TrafficCrashReport
)
您需要指定应选择哪一个...此示例说明如何从trafficCrashReportId
表格中选择InvolvedVehicle
。
Invoke-Sqlcmd -Query "select [trafficCrashReportId],
InvolvedVehicle.involvedVehicleId,
,[assocVehNum]
,[wasStrikingVehicle]
from InvolvedVehicle INNER JOIN TrafficCrashReport ON InvolvedVehicle.trafficCrashReportId = TrafficCrashReport.trafficCrashReportId ...
答案 1 :(得分:2)
问题是该列位于两个表中,并且数据库不知道选择哪个。最好的解决方案是使用表别名并始终限定列名:
select iv.[trafficCrashReportId], iv.[involvedVehicleId],
tcr.[assocVehNum], tcr[wasStrikingVehicle]
from InvolvedVehicle iv INNER JOIN
TrafficCrashReport tcr
ON iv.trafficCrashReportId = tcr.trafficCrashReportId
Where tcr.addDate between '$Yesterday' AND '$TodayDate';" `
我猜哪些列来自哪些表。
答案 2 :(得分:0)
在你的select语句中,你应该具体说明你想要哪个trafficCrashReportID,来自InvolvedVehicle的那个或来自TrafficCrashReport的那个。
选择InvolvedVehicle.trafficCrashReportId