$query_message23 = "select * from messages_system as m, members as me where m.mes_id='$messageId' AND m.frm_id=me.mem_id";
它提供输出
Array ( [mes_id] => 826 [mem_id] => 334 [frm_id] => 334 [subject] => Re: Re: Re: Re: Re: Hola! [body] => i dno i just made it up lollllllllllllllllllll
Artin wrote:
Haha.. Dooskie??? Is that Russian? lol
aurita wrote:
PFFFFFFT!!!!!!!!!!!
YOU KNOW HOW I DOOSKIE! LMAO!
你可以看到mem_id和frm_id是一样的。怎么样?我很迷惑。当我在phpmyadmin中运行此查询时,我从messages_system和members表中获取mem_id 48和frm_id 334(因为我加入了2个表)mem_id 334,所以我认为这个成员mem_id覆盖了messages_system mem_id。
请建议。
谢谢
答案 0 :(得分:2)
我真的怀疑你在phpmyadmin中得到不同的mem_id和frm_id,因为这是在你的where子句中:
m.frm_id=me.mem_id
我对你的表结构一无所知,但对我来说很明显frm_id和mem_id必须相同才能使查询返回一些内容!
答案 1 :(得分:1)
只尝试选择您想要的字段
SELECT m.mes_id, me.mem_id, m.frm_id, m.subject, m.body FROM
...
使用m.mem_id AS m_mem_id
来避免覆盖具有相同名称的字段。
答案 2 :(得分:1)
你有条件:
...AND m.frm_id=me.mem_id
不要徘徊,他们是一样的。
答案 3 :(得分:0)
如果您正在连接表格,并且这些已连接的表格中有两个或更多重复的字段名称,则应使用别名来区分它们
SELECT table1.mem_id AS mem_id1, table2.mem_id AS mem_id2
FROM ...
在您提取的数组中为您提供mem_id1
和mem_id2
。