select * from a,b where a.id = b.id and b.name = '123' and a.money between 200 and 5000
select a.ID, a.MONEY,b.NAME from 表1 a join 表2 b on a.ID=b.ID and b.NAME=‘123’ where a.MONEY between 200 and 5000
select a.name,b.money from tb1 a inner jion tb2 b on a.id=b.id where name='123' and money>200 and money<5000
select * from table where NAME='123'and money between 200 and 5000 你这个查询就这么个语句 用between比 大小于号 效率高 仅此一点。。可以如期他人建议创建索引
已经很简单的语句了,做好索引。 between and 和大于号 小于号 效率一样的。 至少从05开始是一样的。
不过between and 是指>=和<=,不符合要求啊。
#1.从SQL语法上看,基本上已经是最优了。(先过滤name, money,再join) #2.对两个表的ID建立聚集索引,对name建立非聚集索引,对money建立非聚集索引 SELECT a.ID, a.[MONEY], b.NAME FROM 表1 a INNER JOIN 表2 b ON a.ID = b.ID AND b.NAME = '123' AND (a.[MONEY] > 200 AND a.[MONEY] < 5000)
select a.id,a.money,b.name from 表1 a,表2 b where a.id = b.id and b.name = '123' and a.money>200 and a.money<5000
select * from 表1 a, 表2 b where a.id = b.id and b.name = '123' and a.money > 200 and a.money < 5000
select *
from a,b
where a.id = b.id and b.name = '123'
and a.money between 200 and 5000
from 表1 a join 表2 b
on a.ID=b.ID and b.NAME=‘123’
where a.MONEY between 200 and 5000
from table
where NAME='123'and money between 200 and 5000
你这个查询就这么个语句
用between比 大小于号 效率高 仅此一点。。可以如期他人建议创建索引
between and 和大于号 小于号 效率一样的。
至少从05开始是一样的。
#2.对两个表的ID建立聚集索引,对name建立非聚集索引,对money建立非聚集索引
SELECT a.ID, a.[MONEY], b.NAME
FROM 表1 a INNER JOIN 表2 b
ON a.ID = b.ID AND b.NAME = '123' AND (a.[MONEY] > 200 AND a.[MONEY] < 5000)
select a.id,a.money,b.name from 表1 a,表2 b
where a.id = b.id and b.name = '123'
and a.money>200 and a.money<5000
select *
from 表1 a,
表2 b
where a.id = b.id
and b.name = '123'
and a.money > 200
and a.money < 5000
如果name与id是1对1,可试试先查出id
再查表1