0

我怎样才能纠正我从下面的代码中得到的问题,该代码在子句不明确的地方声明了“tahun_pemilihan”。我在这里先向您的帮助表示感谢。

这是 MySQL 表

 $sql = "SELECT 
              a.*, b.vektor_v FROM data_alternatif a, hasil b 
    WHERE a.id_alternatif=b.id_alternatif AND tahun_pemilihan='$thn'";
4

2 回答 2

2

两个表都包含一个名为tahun_pemilihanso 在WHERE子句条件中的列,不清楚要使用哪个表的列;它应该使用data_alternatif结果表中的还是结果表中的那个hasil

用是否应该使用列或是否是要使用的列来限定WHERE子句中的表。a.tahun_pemilihan='$thn'data_alternatif.tahun_pemilihanb.tahun_pemilihan='$thn'hasil.tahun_pemilihan

于 2018-04-12T03:16:24.677 回答
1

如果列名存在于您连接的两个表中,您可能会遇到不明确的列名错误。

在您的情况下,列名tahun_pemilihan存在于您的两个表中。

解决方案:

选择您将使用的两个表中的哪一个。 a.tahun_pemilihan='$thn'或者b.tahun_pemilihan='$thn'

https://www.quora.com/What-does-the-SQL-ambiguous-column-name-error-mean

于 2018-04-12T03:29:24.823 回答