-3

次の MySQL テーブルがあります。

|provincias|  
| id          | |provincia|   

|municipios|
| provincia_id| | id | |municipio|

|**event**|
|municipio_id|
|idEvent|
|name|
|date_begin|
|date_end|               

次の MySQL クエリを実行します (EDITED):

SELECT idEvent, name 
FROM evento e 
INNER JOIN provincias p ON p.id = m.provincia_id 
INNER JOIN municipios m ON m.id = e.municipio_id 
WHERE  provincia = "Iruña de Oka" AND municipio = "Álava" 
AND DATE(date_begin) BETWEEN DATE('2013-07-23') AND DATE('2013-07-26')
ORDER BY name;

しかし、次のエラーが表示されます (EDITED):

1054 - Unknown column 'm.provincia_id' in 'on clause'
4

2 に答える 2

2

このfrom句では、テーブルは定義されるまで参照できません。m定義の前の最初のon句で使用しています。

簡単な解決策は、句を再配置することです。

SELECT idEvent, name 
FROM evento e 
INNER JOIN municipios m ON m.id = e.municipio_id
INNER JOIN provincias p ON p.id = m.provincia_id 
WHERE  provincia = "Iruña de Oka" AND municipio = "Álava" 
AND DATE(date_begin) BETWEEN DATE('2013-07-23') AND DATE('2013-07-26')
ORDER BY name;
于 2013-08-04T15:01:03.743 に答える