MySQL 'tahun_pemilihan' 在 where 子句中有歧义
MySQL 'tahun_pemilihan' in where clause is ambigous
如何更正我不断从下面的代码中得到的问题,其中指出 'tahun_pemilihan' 在子句不明确的地方。提前感谢您的帮助。
这里是MySQLtable
$sql = "SELECT
a.*, b.vektor_v FROM data_alternatif a, hasil b
WHERE a.id_alternatif=b.id_alternatif AND tahun_pemilihan='$thn'";
两个 table 都包含一个名为 tahun_pemilihan
的列,因此在 WHERE
子句条件中不清楚要使用哪个 table 的列;它应该使用 data_alternatif
中的结果还是 table hasil
中的结果?
在 WHERE
子句中用 a.tahun_pemilihan='$thn'
限定 data_alternatif.tahun_pemilihan
或 b.tahun_pemilihan='$thn'
如果 hasil.tahun_pemilihan
是要使用的那个。
如果列名存在于您加入的两个 table 中,您可能会遇到列名不明确的错误。
在您的情况下,列名 tahun_pemilihan
存在于您的两个 table 中。
解决方案:
选择您将使用的两个 table 之一。
a.tahun_pemilihan='$thn'
或 b.tahun_pemilihan='$thn'
https://www.quora.com/What-does-the-SQL-ambiguous-column-name-error-mean
如何更正我不断从下面的代码中得到的问题,其中指出 'tahun_pemilihan' 在子句不明确的地方。提前感谢您的帮助。
这里是MySQLtable
$sql = "SELECT
a.*, b.vektor_v FROM data_alternatif a, hasil b
WHERE a.id_alternatif=b.id_alternatif AND tahun_pemilihan='$thn'";
两个 table 都包含一个名为 tahun_pemilihan
的列,因此在 WHERE
子句条件中不清楚要使用哪个 table 的列;它应该使用 data_alternatif
中的结果还是 table hasil
中的结果?
在 WHERE
子句中用 a.tahun_pemilihan='$thn'
限定 data_alternatif.tahun_pemilihan
或 b.tahun_pemilihan='$thn'
如果 hasil.tahun_pemilihan
是要使用的那个。
如果列名存在于您加入的两个 table 中,您可能会遇到列名不明确的错误。
在您的情况下,列名 tahun_pemilihan
存在于您的两个 table 中。
解决方案:
选择您将使用的两个 table 之一。
a.tahun_pemilihan='$thn'
或 b.tahun_pemilihan='$thn'
https://www.quora.com/What-does-the-SQL-ambiguous-column-name-error-mean