equi-join与mysql

时间:2011-11-07 17:13:18

标签: mysql

我正在尝试加入桌面视频的几张表:

video_id
user_id
camera_id
video_size
video_datetime
video_length
video_url

和桌面相机有:

camera_id
user_id
camera_hash
camera_type
camera_status
camera_name
camera_quality
camera_user
camera_pass
camera_ip
camera_port
camera_url

所以user_id和camera_id很常见。我正在尝试获取数据显示视频大小,日期/时间,长度和相机名称。我可以这样查询:

SELECT videos.video_size, videos.video_datetime, videos.video_length,
cameras.camera_name 
FROM videos, cameras 
WHERE videos.user_id = cameras.user_id 
and videos.user_id=69 and cameras.camera_id=73

这很好,让我得到我想要的但我需要计算数字73(得到69的user_id不是问题)。所以我可以这样做:

SELECT camera_id from videos where user_id=69

这可以返回多个值...因此需要更多处理。我想知道是否有更好或更有效的方法来做到这一点?

1 个答案:

答案 0 :(得分:0)

怎么样:

SELECT videos.video_size, videos.video_datetime, videos.video_length, 
       cameras.camera_name
  FROM videos inner join cameras using (user_id, camera_id)
 WHERE videos.user_id=69