开发者社区 > 云原生 > 中间件 > 正文

中间件-第二赛季,每个表的primary key问题

每个表对应的第一列都是primary key吗,比如
table -交易信息  对应的primary key 就是 orderid?
table-买家信息  对应的primary key 就是buyerid?
table -商品信息 对应的primary key 就是goodid?


那么文档中的第三个接口
/**
* 查询某位卖家某件商品所有订单的某些字段
*
* @param salerid 卖家Id
* @param goodid 商品Id
* @param keys 待查询的字段,如果为null,则查询所有字段,如果为空,则排除所有字段
* @return 符合条件的订单集合,按照订单id从小至大排序
*/

Iterator<Result> queryOrdersBySaler(String salerid, String goodid, Collection<String> keys);这里面goodId不可能对应多个salerId吧~?那么本身这个salerId的作用在何处,本身我就直接通过goodid就可以找到对应的交易信息了

展开
收起
lonoy 2016-07-08 21:59:45 4373 0
3 条回答
写回答
取消 提交回答
  • 回 2楼中间件那珂的帖子
    是一楼同学正确,还是二楼同学正确?即对于第三个接口,有没有保证goodid一定属于对应的sellerid的?
    2016-07-09 13:09:02
    赞同 展开评论 打赏
  • 回 1楼(tonystarkjin) 的帖子
    第一个问题,可以这么认为

    第二个问题,可以按照这位同学的说法来理解

    -------------------------

    回 3楼(windpicker) 的帖子
    1、查询的goodid、saler可能不存在
    2、查询的goodid与salerid必定与关联,不会有反向case来说goodid是对的,但是salerid确无法对应上。salerid只是一个额外信息,可以用也可以不用
    2016-07-09 10:30:49
    赞同 展开评论 打赏
  • Re中间件-第二赛季,每个表的primary key问题
    第一个问题,文档确实语焉不详。

    第二个问题,已经回复过了。但理论上和只指定goodid是不同的。反向测试:假定给出一个goodid你找到了一些结果,但salerid并没有成交这个goodid,那么你返回什么?至于会不会这么考就要看出题人了。
    2016-07-09 09:44:08
    赞同 展开评论 打赏
问答分类:
问答地址:

为企业提供高效、稳定、易扩展的中间件产品。

相关电子书

更多
李劲松|Flink Table Store 典型应用场景 立即下载
Facebook Online Schema Change原理和大规模表结构变更最佳实践 立即下载
低代码开发师(初级)实战教程 立即下载