Python论坛  - 讨论区

标题:[python-chinese] 请教个sqlobject的查询问题

2006年06月06日 星期二 21:04

loocoo loocoo at gmail.com
Tue Jun 6 21:04:38 HKT 2006

Table1 Table2是多对多关系

我现在要查询Table1中的数据,但要求按对应Table2的个数的排序!

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年06月06日 星期二 21:08

xxmplus xxmplus at gmail.com
Tue Jun 6 21:08:57 HKT 2006

具体点啊帅哥

On 6/6/06, loocoo <loocoo at gmail.com> wrote:
>
> Table1 Table2是多对多关系
>
> 我现在要查询Table1中的数据,但要求按对应Table2的个数的排序!
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年06月06日 星期二 21:23

loocoo loocoo at gmail.com
Tue Jun 6 21:23:14 HKT 2006

Table1 Table2是多对多关系 这不用说了吧!就是RelatedJoin

普通的查询就是 Table1.select()

我现在想给select 加一个的排序 如果这个排序的字段是Table 的字段的话 可以是这 
样: Table1.select(orderBy="xx")

但现在要的排序的字段是Table1 对应 Table2的个数,我就不知道怎么查询了!还请 
大家帮忙!

On Tue, 06 Jun 2006 21:08:57 +0800, xxmplus <xxmplus at gmail.com> wrote:

> 具体点啊帅哥
>
> On 6/6/06, loocoo <loocoo at gmail.com> wrote:
>>
>> Table1 Table2是多对多关系
>>
>> 我现在要查询Table1中的数据,但要求按对应Table2的个数的排序!
>> _______________________________________________
>> python-chinese
>> Post: send python-chinese at lists.python.cn
>> Subscribe: send subscribe to python-chinese-request at lists.python.cn
>> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
>> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>>



[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年06月06日 星期二 21:38

xxmplus xxmplus at gmail.com
Tue Jun 6 21:38:45 HKT 2006

我不知道你的db是怎么设计的,但是通常来说多对多关系需要第三张表,两张表是不够的

比如T1有主键a,T2主键ab,T3主键b,T1和T3多对多,T2就是第三张表,那你要的查询可能是这样的:

select count(T2.b) countb from T1, T2 where T1.a=T2.a group by T1.a
order by countb;

where里就可以加和T1相关的条件。

On 6/6/06, loocoo <loocoo at gmail.com> wrote:
> Table1 Table2是多对多关系 这不用说了吧!就是RelatedJoin
>
> 普通的查询就是 Table1.select()
>
> 我现在想给select 加一个的排序 如果这个排序的字段是Table 的字段的话 可以是这
> 样: Table1.select(orderBy="xx")
>
> 但现在要的排序的字段是Table1 对应 Table2的个数,我就不知道怎么查询了!还请
> 大家帮忙!
>
> On Tue, 06 Jun 2006 21:08:57 +0800, xxmplus <xxmplus at gmail.com> wrote:
>
> > 具体点啊帅哥
> >
> > On 6/6/06, loocoo <loocoo at gmail.com> wrote:
> >>
> >> Table1 Table2是多对多关系
> >>
> >> 我现在要查询Table1中的数据,但要求按对应Table2的个数的排序!
> >> _______________________________________________
> >> python-chinese
> >> Post: send python-chinese at lists.python.cn
> >> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> >> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> >> Detail Info: http://python.cn/mailman/listinfo/python-chinese
> >>
>
>
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年06月06日 星期二 21:48

loocoo loocoo at gmail.com
Tue Jun 6 21:48:57 HKT 2006

用sql 我会写,用了orm就不想用sql

On Tue, 06 Jun 2006 21:38:45 +0800, xxmplus <xxmplus at gmail.com> wrote:

> 我不知道你的db是怎么设计的,但是通常来说多对多关系需要第三张表,两张表是 
> 不够的
>
> 比如T1有主键a,T2主键ab,T3主键b,T1和T3多对多,T2就是第三张表,那你要的 
> 查询可能是这样的:
>
> select count(T2.b) countb from T1, T2 where T1.a=T2.a group by T1.a
> order by countb;
>
> where里就可以加和T1相关的条件。
>
> On 6/6/06, loocoo <loocoo at gmail.com> wrote:
>> Table1 Table2是多对多关系 这不用说了吧!就是RelatedJoin
>>
>> 普通的查询就是 Table1.select()
>>
>> 我现在想给select 加一个的排序 如果这个排序的字段是Table 的字段的话 可以 
>> 是这
>> 样: Table1.select(orderBy="xx")
>>
>> 但现在要的排序的字段是Table1 对应 Table2的个数,我就不知道怎么查询了!还 
>>>> 大家帮忙!
>>
>> On Tue, 06 Jun 2006 21:08:57 +0800, xxmplus <xxmplus at gmail.com> wrote:
>>
>> > 具体点啊帅哥
>> >
>> > On 6/6/06, loocoo <loocoo at gmail.com> wrote:
>> >>
>> >> Table1 Table2是多对多关系
>> >>
>> >> 我现在要查询Table1中的数据,但要求按对应Table2的个数的排序!
>> >> _______________________________________________
>> >> python-chinese
>> >> Post: send python-chinese at lists.python.cn
>> >> Subscribe: send subscribe to python-chinese-request at lists.python.cn
>> >> Unsubscribe: send unsubscribe to   
>> python-chinese-request at lists.python.cn
>> >> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>> >>
>>
>>
>> _______________________________________________
>> python-chinese
>> Post: send python-chinese at lists.python.cn
>> Subscribe: send subscribe to python-chinese-request at lists.python.cn
>> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
>> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>>



[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年06月06日 星期二 22:17

xxmplus xxmplus at gmail.com
Tue Jun 6 22:17:28 HKT 2006

http://sqlobject.org/SQLObject.html#selecting-multiple-objects

On 6/6/06, loocoo <loocoo at gmail.com> wrote:
> 用sql 我会写,用了orm就不想用sql
>
> On Tue, 06 Jun 2006 21:38:45 +0800, xxmplus <xxmplus at gmail.com> wrote:
>
> > 我不知道你的db是怎么设计的,但是通常来说多对多关系需要第三张表,两张表是
> > 不够的
> >
> > 比如T1有主键a,T2主键ab,T3主键b,T1和T3多对多,T2就是第三张表,那你要的
> > 查询可能是这样的:
> >
> > select count(T2.b) countb from T1, T2 where T1.a=T2.a group by T1.a
> > order by countb;
> >
> > where里就可以加和T1相关的条件。
> >
> > On 6/6/06, loocoo <loocoo at gmail.com> wrote:
> >> Table1 Table2是多对多关系 这不用说了吧!就是RelatedJoin
> >>
> >> 普通的查询就是 Table1.select()
> >>
> >> 我现在想给select 加一个的排序 如果这个排序的字段是Table 的字段的话 可以
> >> 是这
> >> 样: Table1.select(orderBy="xx")
> >>
> >> 但现在要的排序的字段是Table1 对应 Table2的个数,我就不知道怎么查询了!还
> >> 请
> >> 大家帮忙!
> >>
> >> On Tue, 06 Jun 2006 21:08:57 +0800, xxmplus <xxmplus at gmail.com> wrote:
> >>
> >> > 具体点啊帅哥
> >> >
> >> > On 6/6/06, loocoo <loocoo at gmail.com> wrote:
> >> >>
> >> >> Table1 Table2是多对多关系
> >> >>
> >> >> 我现在要查询Table1中的数据,但要求按对应Table2的个数的排序!
> >> >> _______________________________________________
> >> >> python-chinese
> >> >> Post: send python-chinese at lists.python.cn
> >> >> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> >> >> Unsubscribe: send unsubscribe to
> >> python-chinese-request at lists.python.cn
> >> >> Detail Info: http://python.cn/mailman/listinfo/python-chinese
> >> >>
> >>
> >>
> >> _______________________________________________
> >> python-chinese
> >> Post: send python-chinese at lists.python.cn
> >> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> >> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> >> Detail Info: http://python.cn/mailman/listinfo/python-chinese
> >>
>
>
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2025

    京ICP备05028076号