开发者

mysql extra columns with same name from two tables

Table 1 has columns : entry_id user_id ... Table 2 has columns : entry_id user_id ...

the user_id entry is not always the same so I wo开发者_高级运维uld like to extract both of them so I can later on compare them in my script

SELECT * FROM 
table1 as t1
INNER JOIN table2 as t2 on t1.entry_id=t2.entry_id
WHERE t1.user_id='%s'

I would like to extract t1.user_id and t2.user_id ...the problem is the result array has only user_id

thank you


Use AS keyword:

SELECT
  t1.user_id as t1_user_id
  ,t2.user_id as t2_user_id
FROM table1 as t1
INNER JOIN table2 as t2
  ON t1.entry_id=t2.entry_id
WHERE t1.user_id='%s'


SELECT t1.user_id AS user_id_1, t2.user_id AS user_id2, ...

I think the framework executing the query is at fault for "merging" the two columns here, the result set should have both, but these are stored into an associative array somewhere along the line.

It is a good idea to only request those columns you actually need nonetheless :)


You can effectively use ALIASING (i.e. use the AS keyword).

SELECT t1.user_id as user_id_1, t2.user_id as user_id_2  FROM 
table1 as t1
INNER JOIN table2 as t2 on t1.entry_id=t2.entry_id
WHERE t1.user_id='%s'
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜