id    p_id    name1     0        江苏省
2     1        南京
3     2        鼓楼区
4     2        雨花台

这是这样的结构全国的,这样的自关联怎么查询的?
这样的表结构怎么实现省市县联动查询的?
怎么写SQL语句的?
我在下拉菜单中选择江苏,然后出现南京,苏州,无锡,我在选择南京,出现雨花台,鼓楼区。

解决方案 »

  1.   

    联动查询要用到ajax啊,google搜索联级菜单
      

  2.   

    联动查询可以用ajax做,好像也可以完全用sql做,具体的资料自己搜索下。
      

  3.   

    http://cssrain.cn/article.asp?id=836
    -
    http://cssrain.cn/article.asp?id=1213
      上面的是代码可以下的。
    http://www.javaeye.com/topic/103265
      

  4.   

    select name  from [地址表] where id in (select id from [地址表]  where p_id='参数')
      

  5.   

    select name from [表名] where p_id=?;
      

  6.   

    绝对的Ajax
    第一次查询只查省份得到省份列表(select name, p_id from t where p_id = 0)
    onchange事件触发Ajax调用后台查询得到选中省份的地市列表(select name, p_id from t where p_id = 1/*前台传过来的参数*/)
    如此如此...
      

  7.   

    省市联动典型的ajax嘛,写2个sql就搞定了,不用ajax 如果数据很多很大的话你就等着加载延迟吧,,在一个 js也是可以实现的,方法多的是 网上到处都是,要想用一句sql实现我看有点难,你最少有省和市2个下拉框,何况你是3个,怎么用一个sql实现啊 我也想看看怎么实现的,一个下拉框一个结果集也就得一个sql,最少也得用到3个吧 lz自己思考下啊。 如果只是想知道sql看你表结构只能是
    select name from [表名] where p_id=?; 不过你省的下拉框用这个sql就不好用了。。因为p_id是需要上一级id来做参数的,省没有上一级 所以,看你的表结构好像怪怪的,最好是省、市、区用3个表建立关系这样结构清晰
      

  8.   

    ajax啊,首先查询p_id为o的都查询出来,在查询下面的孩子的时候由id查询。
      

  9.   

    这个联动我用dwr实现过一个  利用parentid看是哪一层的
      

  10.   

    建议lz用dwr 
    回复内容太短了!。
      

  11.   

    http://download.csdn.net/source/2087024 是我自己写的AJAX组件。里面有例子,不懂可以问我
      

  12.   

    全国省市县三级联动菜单源码  http://download.csdn.net/source/1479417