表 order (订单基本信息),有以下字段: oid:int,自增主键 opids:varchar,值类似“3,4","5,"6,7,8",意思是这个订单,包含了哪几个产品(对应 product 表里 pid 字段) ocomment:varchar,备注信息,关键字查询要查到此字段
表 product (产品信息),有以下字段: pid:int,自增主键 pinfo:varchar,产品信息,关键字查询要查到此字段
这两个表的用法是,新增一个订单的时候,订单的客户信息、发货地址等都是一样的,所以这些基本信息,都存在 order 表中,然后一个订单可能包含 1 个或者多个产品,产品的具体信息存在 product 表中。然后插入完 product 表的数据后,把 pid 处理并存入到 order 表的 opids 字段中。
现在要查询 ocomment 或 pinfo 中含有“测试”关键字的信息,要求查询的结果以 product 为主,每一条结果,都要有完整的订单基本信息,但是 pid 不重复,比如: pid|pinfo|oid|opids|ocomment ---|:--:|:--:|:--:|:--:| 3|"测试"|1|"3,4"|"" 5|"产品 5 的信息"|2|"5,6,7"|"测试" 6|"产品 6 的信息"|2|"5,6,7"|"测试" 7|"产品 7 的信息"|2|"5,6,7"|"测试" 9|"测试产品 9"|5|"9,10"|""
我之前写了一堆 left jon 或者 group by,都查不到准确的结果,要么重复的结果( pid 重复),要么某些结果缺少订单基本信息,请指教!
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.