mysql数据库select 多表查询后结果集条数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql数据库select 多表查询后结果集条数相关的知识,希望对你有一定的参考价值。
比如现在有两个表table1 table2
字段分别为
table1: userid email sex
table2: userid phone age
select a.*,b.age from table1 a,table2 b where a.userid=b.userid group by userid;
比如结果集字段为
userid email sex age
数据我就写不了。。关键是如何求出生成的结果集的数据列数。。
其次,如果是求出你这个sql返回结果的行数的话,可以套一层:
select count(*) from (select a.*,b.age from table1 a,table2 b where a.userid=b.userid group by userid); 参考技术A userid在两个表中都应该是唯一的吧,你group by是什么意思呀?
如果需要获得结果的行数,可以使用select count(*) from table1 a,table2 b where a.userid=b.userid.
MYSQL 多表联合查询问题
是这样的,我建了三个表,存的是不同商品信息,第一个表,所有商品的CID 我设为0,第二个CID设为1 第三个表 设为2, 那我知道一件商品的ID 和CID ,怎么才能查询我所想要的结果
我做商场,建了几个商品表,把这商品的信息存放到购物车里,点击商品名字后要返回到商品列表,这个时候需要把商品的所有信息取出来,问题是这么多表,不知道从哪个表查
$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次 数据 所以 效率应该很高了。
参考技术A 三表联查 只要找出关联的字段关系来联查就行了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
本回答被提问者采纳 参考技术B 问题应该不难,但是你描述得让人很难明白,你举个例子吧。以上是关于mysql数据库select 多表查询后结果集条数的主要内容,如果未能解决你的问题,请参考以下文章