有一个下拉列表,它的显示是根据被引用次数多少来进行排序。也就是说,下拉列表的某一项值,被选择引用次数越多,那它就排在前面。
这样子,数据库中将有两张表,一张是A,就是下拉列表的数据源数据。另一个张表B,就是补引用的表,它有一个外键,就是A表的主键。
表A:
![](https://images2015.cnblogs.com/blog/28036/201510/28036-20151006092403003-541864841.png)
表B:
![](https://images2015.cnblogs.com/blog/28036/201510/28036-20151006093129956-1236661431.png)
一般情况之下,你的下拉列表的数据源,就是这样子:
![](https://images2015.cnblogs.com/blog/28036/201510/28036-20151006095404112-192982371.png)
但是这样是没有办法实现我们在博文开始所提及的要求。我们得修改一下这个存储过程才行。
![](https://images2015.cnblogs.com/blog/28036/201510/28036-20151006103508878-314706252.png)
上面是的存储过程,是先统计好表A的各个项目在表B是的被引用情况,然后与表A进行LEFT JOIN,再做一个ORDER BY排序。