次の構成を持つ2つのテーブルがあります。
エラータイプ:
| id | errortype_text |
エラー理由:
| id | errorreason_text | errortype_id |
errorreason
テーブルからすべてのデータを選択し、errortype_id
データを対応するerrortype_text
.
これはどのように可能ですか?
次の構成を持つ2つのテーブルがあります。
エラータイプ:
| id | errortype_text |
エラー理由:
| id | errorreason_text | errortype_id |
errorreason
テーブルからすべてのデータを選択し、errortype_id
データを対応するerrortype_text
.
これはどのように可能ですか?
テーブルに外部キーがある場合は、モデルでそれを行うことができます:
$this->db->select('erroreason_text');
$this->db->join('errorreason', 'errortype.id = errorreason.id');
$query = $this->db->get('errortype');
return $query->result();
SQL/MySQL について話している場合は、次のようにする必要があります。
SELECT `errortype_text`, `errorreason_text`, `errortype_id` FROM `errorreason` JOIN `errortype` ON `errortype`.`id`=`errorreason`.`id`
これは、同じ ID を持つエントリに基づいてテーブルを結合します。これは、Yan が提案した方法とまったく同じです。
PHP/Codeigniter を明示的に参照している場合は、これをパラメーターとして mysql_query に渡して、後で評価する必要があります。
$query=mysql_query("SELECT `errortype_text`, `errorreason_text`, `errortype_id` FROM `errorreason` JOIN `errortype` ON `errortype`.`id`=`errorreason`.`id`");