0

このエラーが発生していますが、助けてもらえますか?

「on句」の不明な列「id.state」

これは私のコードです:

$sql = mysql_query("SELECT `fam_crimes`.`id`, `starter_id`, `num_dlns`, `deelnemers`,  `state`, `state_id`, `misdaad` FROM `fam_crimes`
LEFT JOIN `gameStates` ON (`id`.`state`=`state`.`fam_crimes`)
WHERE `family_id`=".$famID." ORDER BY `id` ASC ")or die(mysql_error());
4

2 に答える 2

1

まず、読みやすいように書き直してみましょう。

$sql = mysql_query(
  "SELECT `fam_crimes`.`id`,
               `starter_id`,
                 `num_dlns`,
               `deelnemers`,
                    `state`,
                 `state_id`,
                  `misdaad`
   FROM `fam_crimes`
   LEFT JOIN `gameStates` ON (`id`.`state`=`state`.`fam_crimes`)
   WHERE `family_id`=".$famID." ORDER BY `id` ASC ")
or die(mysql_error());

ここで 10 行目を見てください。@Kan が言うようidに、クエリにはテーブルがありません。

というわけで推理していきます!10 行目を次のように変更します。

LEFT JOIN `gameStates` ON (`fam_crimes`.`state_id`=`gameStates`.`id`)

幸運を祈ります。この答えが非常に幸運な推測でない限り、テーブルの説明を投稿する必要があります (どの列が含まれfam_crimesているgameStatesか?)。

于 2013-08-09T15:49:53.213 に答える
0

idテーブル名でstateある必要があり、列名である必要があります。idクエリにテーブルがありません。

私はそれが次のようなものであるべきだと思います:

SELECT `fam_crimes`.`id`, `starter_id`, `num_dlns`, `deelnemers`,  `state`, `state_id`, `misdaad`
 FROM `fam_crimes`
 LEFT JOIN `gameStates` ON (`gameStates`.`id`=`fam_crimes`.`state`)
WHERE `family_id`...
于 2013-08-09T15:43:22.090 に答える