Re: PDO include table name prefixes in FETCH_ASSOC
| From: | Richard Quadling | Date: | Thu, 25 Mar 2010 08:51:00 +0000 |
| Subject: | Re: PDO include table name prefixes in FETCH_ASSOC | ||
| References: | 1 2 3 | Groups: | php.db |
| Request: | Send a blank email to php-db+get-47007@lists.php.net to get a copy of this message | ||
On 24 March 2010 18:04, Aaron Paetznick <aaronp@critd.com> wrote:
> Thanks for the advise. I wanted a more automatic method of prefixing column
> names, but I ended up just aliasing them all.
>
> I know I could always just issue multiple SELECTs, but I wish MySQL would
> support this sort of functionality natively. I'd really like to reference
> my results as $result["table0"]["column0"] from a single SELECT.
>
> Anyways, thanks all.
>
>
> --Aaron
>
>
> On 3/24/2010 11:28 AM, Niel Archer wrote:
>>>
>>> Many of my MySQL tables have columns with the same name. I want to have
>>> PDO include table names in named result sets. For example:
>>>
>>> $sth = $dbh->prepare("SELECT * FROM table0, table1");
>>> $result = $sth->fetchAll(PDO::FETCH_ASSOC);
>>>
>>>
>>> I want $result to be organized like:
>>>
>>> echo $result["table0.column0"];
>>> echo $result["table0.column1"];
>>> echo $result["table1.column0"];
>>> echo $result["table1.column1"];
>>>
>>>
>>> Or, alternatively:
>>>
>>> echo $result["table0"]["column0"];
>>> echo $result["table0"]["column1"];
>>> echo $result["table1"]["column0"];
>>> echo $result["table1"]["column1"];
>>>
>>>
>>> Any ideas? Thanks!
>>
>> Sounds like you want to UNION two SELECTs
>> http://dev.mysql.com/doc/refman/5.0/en/union.html
>>
>> (SELECT col1, col2, col4 FROM table1 WHERE ... ORDER BY ...)
>> UNION
>> (SELECT col1, col2, col4 FROM table2 WHERE ... ORDER BY ...)
>>
>>
>>> --Aaron
>>>
>>>
>>> --
>>> PHP Database Mailing List (http://www.php.net/)
>>> To unsubscribe, visit: http://www.php.net/unsub.php
>>
>> --
>> Niel Archer
>> niel.archer (at) blueyonder.co.uk
>>
>>
>>
>
> --
> PHP Database Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>
I use MS SQL and have used other DBs. I've never seen the table name
as part of the column name in a result set on any of them.
--
-----
Richard Quadling
"Standing on the shoulders of some very clever giants!"
EE : http://www.experts-exchange.com/M_248814.html
EE4Free : http://www.experts-exchange.com/becomeAnExpert.jsp
Zend Certified Engineer : http://zend.com/zce.php?c=ZEND002498&r=213474731
ZOPA : http://uk.zopa.com/member/RQuadling