PHPを使ったSQLite2と3のPDO::FETCH_ASSOCについて(カラム名が重複している場合)

PHPを使ったSQLite2と3のPDO::FETCH_ASSOCについて(カラム名が重複している場合) 例えば以下のテーブルをuser idとfile idを使って内部結合させ、カラム名と値を取得するとします。 userテーブル id name email 1 山田 ○○ fileテーブル id name 1 aaa $sql = "select * from user inner join file on user.id = file.id"; $stmt = $dbh->query($sql); $result = $stmt->fetch(PDO::FETCH_ASSOC); $resultをダンプすると、 SQLite2の場合 [user.id] => 1 [user.name] =>山田 [user.email] => ○○ [file.id] => 1 [file.name] =>aaa SQLite3の場合 [id] => 1 [name] =>山田 [email] => ○○ SQLite3の場合、PDO::FETCH_ASSOCを使ってカラム名と値を取得すると、連想配列のキーにテーブル名が付かない為、重複するもの、この場合fileテーブルのidとnameは格納されません。 SQLite3で、SQLite2の様に結合させたカラム名,値を取得するにはどの様に処理すれば宜しいのでしょうか。 教示お願い致します。

PHP453閲覧xmlns="http://www.w3.org/2000/svg">50

ベストアンサー

0

SELECT * ではなく、 SELECT user.id AS user_id, ... ではどうですか?

ThanksImg質問者からのお礼コメント

iroha_codeさん有難う御座いました。教示の方法で取得するよう致します。

お礼日時:2012/11/20 15:21