佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

查看: 1254|回复: 8

一个复杂的sql statement vs 几个简单的sql statements

[复制链接]
发表于 31-7-2005 01:59 PM | 显示全部楼层 |阅读模式
一个复杂的sql statement比较快,
我是指,那个sql statement很多join,

还是几个简单的sql statement比较快?
回复

使用道具 举报


ADVERTISEMENT

发表于 31-7-2005 11:52 PM | 显示全部楼层
不用join..
而如果资料库是很复杂的话..那程序会很长..
回复

使用道具 举报

 楼主| 发表于 1-8-2005 09:15 AM | 显示全部楼层
$sql="select id from student where student_name='ahkau'";
$result=mysql_query($sql);

while ($row=mysql_fetch_array($result)){
        $id=$row[0];
        $sql="select course_name from course where course_id='$id'";
        $result=mysql_query($sql);
        while ($row=mysql_fetch_array($result)){
        $course=$row[0];
        }
}

这样会比较快吗?
回复

使用道具 举报

发表于 1-8-2005 10:21 AM | 显示全部楼层
如果是这个例子。。。我想一个SQL 会快些。

select c.course_name from course c, student s where c.course_id=s.id and s.student_name='ahkau';
回复

使用道具 举报

发表于 18-8-2005 02:15 AM | 显示全部楼层
你是用foreign key吗? link 2 tables???
回复

使用道具 举报

发表于 18-8-2005 10:23 AM | 显示全部楼层
须祢会比较好,
而且,也少了很多东西。
回复

使用道具 举报

Follow Us
 楼主| 发表于 19-8-2005 08:52 AM | 显示全部楼层
原帖由 红发 于 18-8-2005 10:23 AM 发表
须祢会比较好,
而且,也少了很多东西。



须祢??
什么来的?
回复

使用道具 举报

发表于 19-8-2005 09:34 AM | 显示全部楼层
用JOIN会更好

如你的例子
SELECT course_name FROM course INNER JOIN student ON course.course_id=student.id WHERE student_name = 'ahkau'

但从你的sql statement, student id 和 course id 是一样的?
回复

使用道具 举报


ADVERTISEMENT

发表于 20-8-2005 09:15 PM | 显示全部楼层
如果是庞大的DB那就用VIEW来解决
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 15-11-2024 07:30 AM , Processed in 0.114977 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表