论坛首页 综合技术论坛

[SQL]多个字段关联到同一张表的查询

浏览 5568 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2013-09-16  
CREATE TABLE T_INFO (
  INFO_ID NUMBER,
  INFO_CONTENT VARCHAR2(100),
  CREATOR NUMBER,
  UPDATOR NUMBER
)

CREATE TABLE T_USER (
  USER_ID NUMBER,
  USER_NAME VARCHAR2(10)
)


现在有两张表T_INFO和T_USER,表T_INFO的列CREATOR、UPDATOR都关联到表T_USER的USER_ID列,现在需要用一条SQL语句把T_INFO和T_USER关联起来。我能想到的做法只有下面一种,有没有更好的方法?

SELECT I.INFO_ID, I.INFO_CONTENT, I.CREATOR, I.UPDATOR,
       U1.USER_NAME CREATOR_NAME, U2.USER_NAME UPDATOR_NAME
  FROM T_INFO A, T_USER U1, T_USER T2
 WHERE A.CREATOR = U1.USER_ID AND A.UPDATOR = U2.USER_ID


PS: 数据库是Oracle。
   发表时间:2013-09-22  
这要看你怎么用了,
FROM T_INFO A, T_USER U1
WHERE A.CREATOR = U1.USER_ID or A.UPDATOR = U1.USER_ID 
这样也是关联啊
0 请登录后投票
   发表时间:2013-10-16  
楼主,你那就是标准做法。
0 请登录后投票
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics