如果你取的是某一个具体的ID 那么改成这样: select b.* from a,b where a.id=b.classid and a.id=5
就是先读一个A表的数据,比如此时A表ID为5 然后把B表里CLASSID为5的所有数据相应读出来 ----------------------------------------- select * from B where classid=5
--你自己的已经体现出要求了嘛--A表 create table A( ID int primary key, --主键 TOPIC nvarchar(100))--B表 create table B( ID int primary key, --主键 CLASSID int references A(ID), --外键,按我理解,你应该是通过这个与A表关联来体现分类吧? CONTENT nvarchar(4000))--在B表的 CLASSID 上创建索引,提高检索效率 create index IDX_B_CLASSID on B(CLASSID)
另外,对于查询效率的问题,你在查询的时候,应该还会指定其他条件吧? 这些条件也会影响查询效率所以不能单从 select * from B where classid=5 这样的语句来分析你的效率
然后把B表里CLASSID为5的所有数据相应读出来
那么改成这样:
select b.* from a,b where a.id=b.classid
and a.id=5
然后把B表里CLASSID为5的所有数据相应读出来
-----------------------------------------
select * from B where classid=5
create table A(
ID int primary key, --主键
TOPIC nvarchar(100))--B表
create table B(
ID int primary key, --主键
CLASSID int references A(ID), --外键,按我理解,你应该是通过这个与A表关联来体现分类吧?
CONTENT nvarchar(4000))--在B表的 CLASSID 上创建索引,提高检索效率
create index IDX_B_CLASSID on B(CLASSID)
能否加QQ:29034764