一个查询语句

[复制链接]
查看11 | 回复6 | 2008-8-13 12:38:41 | 显示全部楼层 |阅读模式
数据结构如下:
表a:
手机号
13112341234
13012341232
...............
表b:
起始号终止号地区名称
1301234
1301235
成都
1311234 1311235 绵阳
...............
起始号表示手机的前面7位
终止号表示手机的前面7位

现在我想通过这两张表的到下面的效果
手机号 地区名称
13112341234
成都
13012341232
绵阳
请问这个SQL语句这怎么写???????????
回复

使用道具 举报

千问 | 2008-8-13 12:38:41 | 显示全部楼层
select "手机号","地区名称" from a, b where substr(trim("手机号&quot

,1,7) = trim("起始号&quot

;
回复

使用道具 举报

千问 | 2008-8-13 12:38:41 | 显示全部楼层
如果是13012351000就查不出来了哈
回复

使用道具 举报

千问 | 2008-8-13 12:38:41 | 显示全部楼层
select "手机号", "地区名称" from a, b where substr(trim("手机号&quot

,1,7) = trim("起始号(+)&quot

;
回复

使用道具 举报

千问 | 2008-8-13 12:38:41 | 显示全部楼层
不明白
回复

使用道具 举报

千问 | 2008-8-13 12:38:41 | 显示全部楼层
select "手机号", "地区名称" from a, b where substr(trim("手机号&quot

,1,7) between trim("起始号&quot

and trim("终止号&quot


回复

使用道具 举报

千问 | 2008-8-13 12:38:41 | 显示全部楼层
最初由 longwansheng 发布
[B]select "手机号", "地区名称" from a, b where substr(trim("手机号&quot

,1,7) = trim("起始号(+)&quot

; [/B]

看了半天才知道1楼主的意思。
我觉得 YuriOu 的回复是正确的。
也就是:
select "手机号", "地区名称" from a, b where substr(trim("手机号&quot

,1,7) between trim("起始号&quot

and trim("终止号&quot


而上面有位楼主说 13012351000 查不出来?我觉得不可思意,
这个明明是符合成都地区的手机号码啊。为什么查不出来。
而 longwansheng 楼主说加个外连接,我看在这里是没有必要的。
按照你加的外连接的意思,是该起始号为空的时候,也可以查询。
另外,外连接的条件语句 好像只能与其他条件语句一起使用,而不能单独使用的。否则查询结果不是自己希望的结果啊。
回复

使用道具 举报

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

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行