跟据客户开发了个网上订货平台。
要求不同用户所能订购的品牌不同所以必须过滤不同用户的品牌。 当时建表是 品牌表、用户品牌表、用户表 。 其中“用户品牌表”保存了每个用户所能订货的品牌。原本定义好品牌之后基本上不会变的。
今天客户突然说要给每一个用户同时添加另外两个品牌,这两个品牌是今天才加上的。
当时想啊,给一个用户添加两个品牌那很空间,两条 insert 就可以了,但人家现在的用户达到6000多人了,那怎么添加呢?
我想这时就可以用到迪卡儿积了。
平时查询的时候我们特别注意别出现迪卡儿积。
我现在就是利用在迪卡儿积来实现用户品牌添加的。
insert into 用户品牌表(品牌ID,用户ID) select 品牌ID,用户ID from 品牌表,用户表 where 品牌ID in (新增加的两个品牌的ID)
这样就实现了给所有用户同时添加两个品牌了。
当然我感觉这种作法怪怪的。 应该有更科学的方法才对。只是在下学识太薄还不知道。
转载于:https://www.cnblogs.com/test99/articles/1828287.html