MYSQL 多表联合查询问题

是这样的,我建了三个表,存的是不同商品信息,第一个表,所有商品的CID我设为0,第二个CID设为1第三个表设为2,那我知道一件商品的ID和CID,怎么才能查询我所想要的结... 是这样的,我建了三个表,存的是不同商品信息,第一个表,所有商品的CID 我设为0,第二个CID设为1 第三个表 设为2, 那我知道一件商品的ID 和CID ,怎么才能查询我所想要的结果
我做商场,建了几个商品表,把这商品的信息存放到购物车里,点击商品名字后要返回到商品列表,这个时候需要把商品的所有信息取出来,问题是这么多表,不知道从哪个表查
展开
 我来答
房菱
2011-07-05 · TA获得超过1438个赞
知道小有建树答主
回答量:2656
采纳率:0%
帮助的人:0
展开全部
//先读出所有列车信息:

$query = mysql_query("SELECT * FROM A ");
$a_list = array(); //这里是 所有火车信息 数组
while($record = mysql_fetch_assoc($query)) {
$a_list[] = $record;
}

// 读取所有货物信息
$query = mysql_query("SELECT * FROM B ");
$b_list = array(); //这里是 所有货物信息 数组
while($record = mysql_fetch_assoc($query)) {
$hid = $record['id'];
$b_list[$hid] = $record['it_name']; //这里重要
}

// 循环 插入 对应的 货物名字 , 没有在读取数据库所以 速度快。
foreach($a_list as $k=>$v) {
for($i=1;$i<=30;$i++) {
if($v['NU'.$i] != -1){
$it_id = $v['NU'.$i]; //货物的编号
$a_list[$k]['NU_IT'.$i] = $b_list[$it_id]; //创建新的元素 插入货物名称。
}
}
}

//那么结果 $a_list 这个数组 就是你要的 结果了。

//这里 NU_IT1 , NU_IT2, ...... NU_IT30 这些 就是货物名字

// 这个 只是读了 2次 数据 所以 效率应该很高了。
忆古思今
推荐于2017-11-24 · TA获得超过863个赞
知道小有建树答主
回答量:926
采纳率:40%
帮助的人:223万
展开全部
三表联查 只要找出关联的字段关系来联查就行了1,,INNER JOIN ON 2, RIGHT JOIN ON 3 LEFT JOIN ON 4,JOIN ON 差不多就着几个
追问
能不能讲清楚啊,能写个SQL语句出来吗,假设第一个表叫PC,第二个表Phone,第三个表是tel,三个表都有字段cid,并且每个表里商品的CID都是一样的,那我现在想查cid 是2,id是3的商品信息
追答
select a.*,b.*,c.* from a  INNER JOIN  b  ON a.cid=b.cid  INNER JOIN c ON c.cid=a.cid  where  a.cid=2 and a.id =3
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
flyingFish211
2011-07-05 · TA获得超过2.1万个赞
知道大有可为答主
回答量:1.5万
采纳率:50%
帮助的人:1.1亿
展开全部
问题应该不难,但是你描述得让人很难明白,你举个例子吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式