这几天做一个功能的时候,调取一张数据表的数据,顺便把有联系的另一张数据表里面的数据也提取出来。
本来写的语句是这样的,这是第一次查询的语句,结果是成功调用。
$where['train_train.Station'] = $stationname;
$data = M('train_train')->join('train_trainlist ON train_train.ID = train_trainlist.ID')->where($where)->select();
然后下一次还是同样的功能却出现问题
$where['Train_nonstopview.StartStation'] = $from;
$where['Train_nonstopview.EndStation'] = $to;
$data = M('Train_nonstopview')->join('train_trainlist ON train_nonstopview.RouteID = train_trainlist.ID')->where($where)->select();
为什么会出现这样的问题呢。。
经过我仔细推敲,才发现原来第一次查询的字段两张表都不一样,但是第二次就不行了,,因为第二次的查询字段两张表都有相同的字段,所以就不行了。。。
所以在以后写关联查询的时候,一定要记得查询的条件写清楚查询的字段是哪张表的,在字段前面加上表名。