select a.ID,a.LAC,a.BSC,a.cell_ID,a.site_name,a.site_type,a.site_cover_type,a.BCCH,a.LONGITUDE,a.LATITUDE,a.DIRECTION,ROUND(drop_call_rate,4) as myvalue from FromBaseCell a LEFT OUTER JOIN P200310_CENTER_CELL b ON isnull(a.cell_name,'') = isnull(b.cell_id,'') WHERE b.datetime = '2003-10-13 16:00:00' order by a.ID
解决方案 »
- 求助!以下执行语句为什么不能赋值?谢谢!(在线等)
- SQL2005新建存储过程时提示对象名无效
- 系统数据库和对象
- 怎么把SQL SERVER的datetime数据转化成time_t
- 数据集的一个小问题
- xp下只能运行个人版的SQL SERVER2000么?
- 存储过程传递参数含有日期的时候总是报错????
- 请问这种情况下的sql语句该怎写??
- 请教各位,在SQL Server 数据库中,能不能给数据库增加自定义属性
- 紧急!!这个SQL语句怎么写,有关如何用引号的小问题?在线!!
- 关于交叉表!
- 我在sql server 2000中用查询分析器访问另一台winnt上的sql server 6.5为什么字符会返回为乱码,我的系统为win2k server
id = 10,cell_name = null 这两条记录,
b表中都没有这两个cell的,但是连接后的结果中,这两条记录也没有!
select a.ID,a.LAC,a.BSC,a.cell_ID,a.site_name,a.site_type,a.site_cover_type,a.BCCH,a.LONGITUDE,a.LATITUDE,a.DIRECTION,ROUND(drop_call_rate,4) as myvalue from FromBaseCell a LEFT JOIN P200310_CENTER_CELL b ON isnull(a.cell_id,'') = isnull(b.cell_id,'') WHERE b.datetime = '2003-10-13 16:00:00' order by a.ID
在a表中字段名是cell_name,在b表中是cell_id,它们的内容都一样的,是460-00-22303-12345的形式,都是varchar类型,唯一的不同的是定义的长度不一样,一个定义为最长32个字节,一个定义为255个字节
SELECT a.*, b.*
FROM 小区参数表 a LEFT OUTER JOIN
天线方向表 b ON a.LAC = b.LAC AND a.CI = b.CI
ORDER BY a.id
结果就对的,a表中有而b表中没有的数据也在结构集中,怪事!
难道一定要连接的字段名一样?
---
a b
a b
---
这样列出来
SELECT a.id, a.cell_id, a.SITE_Name, a.site_type, a.site_cover_type, a.longitude,
a.latitude, a.direction, ROUND(b.Drop_Call_Rate, 4) AS Expr1
FROM frombasecell a LEFT OUTER JOIN
P200310_CENTER_CELL b ON a.cell_name = b.cell_id AND
b.datetime = '2003-10-13 16:00:00'
ORDER BY a.id
也就是把原来的where 改成 and,一起放在on 后面,就可以了!怪!