求前辈们给点建议啊,这是我的毕业设计,呜呜呜。
表1:商家表;字段:SJID(商家ID),SJName(商家名称)表2:分店表;字段:FDID(分店编号),FDAddress(分店地址),SJID(商家ID—外键)表3:美食表;字段:FoodID(美食ID),FoodName(美食名称),SJID(商家ID—外键)表4:分店美食配置表:ID(编号),FDID(分店编号—外键),FoodID(美食ID—外键)
——————————————华丽的分割线———————————————————————
我的需求是:我想根据一个地址搜出该地址内的美食。
商家可以新建多个分店,然后把商家所拥有的美食配置给分店(因为有的美食不一定是每个店都有的),美食的地址就会随分店的增加,减少而变换。
我上面设计的表感觉不能实现这个需求,我用了一个配置表,可是这样搜出来的美食会重复出现多次。
小弟跪求,前辈们给点修改建议,为小弟指明方向,谢谢了。

解决方案 »

  1.   


    -- 根据一个地址搜出该地址内的美食。
    select c.*
    from 分店表 a 
    inner join 分店美食配置表 b on a.FDID=b.FDID
    inner join 美食表 c on b.FoodID=c.FoodID
    where a.FDAddress='[指定的地址]'
      

  2.   

    '不提供地址'的話,就是說要所有美食,直接查詢美食表不就行了. select * from 美食表
      

  3.   


    select distinct c.*
    from 分店表 a 
    inner join 分店美食配置表 b on a.FDID=b.FDID
    inner join 美食表 c on b.FoodID=c.FoodID
    where a.FDAddress='[指定的地址]'