关于关联数据表数据排序的问题

#1 xiuluozhou

我有个主表A,关联附表B,但是我A的list排序需要根据B中的字段排序怎么做呀?

在spModel里面貌似联表查询是通过分多次查询实现的,不是leftjoin呀。

2012-12-11 11:36:08

#2 xiuluozhou

刚看到其他帖子中也有类似的问题,手册中关联结果的限制里面是在$linker 里面写的排序,那如果排序规则是通过参数传入的,也就是不一定要用B表中的字段排序,可以动态修改$linker 里面的排序值么?

2012-12-11 11:43:39

#3 jake

$linker是一个变量数组,赋值修改就行。

不是用join语法,一方面是join语法无法做到相应的结果;另一方面,在中小应用join语法没有什么优势,而大应用join语法效率会比较低。

2012-12-11 12:48:54

#4 xiuluozhou

jake 发表于 2012-12-11 12:48
$linker是一个变量数组,赋值修改就行。

不是用join语法,一方面是join语法无法做到相应的结果;另一方面 ...
刚试了下,貌似设置关联表B的sort后,没有影响到主表A的排序啊,查了下SQL日志,排序的操作都在关联表的sql上了,主表出来的数据没有变化,这个我该怎么设置呢?

2012-12-11 16:01:02

#5 xiuluozhou

又查了下以前相关的帖子,看到这段
关联的sort指的是对应表结果的排序,所以字段一定是对应表的字段(不能是本表的字段)
目前LIST显示的是主表字段信息,但是有写排序规则是用到了一对一的附属表的字段来排序主表。
这个需要怎么设置呢?是不是只能用jion啊?

2012-12-11 16:18:57

#6 jake

简单说,主表排序,在findAll里面设置,从表排序,改$linker变量。

2012-12-11 18:24:56