询问一个sql语句的效率问题
询问一个问题,现有一张表执行INSERT操作,其中一部分数据是界面手工输入,还有一部分数据需从其他表取,现在用程序处理直接执行sql语句(简化后语句),如下: 
 INSERT   INTO   明细表 
 (Guid,人员ID,人员名称,人员电话,单位ID,单位名称,单位编码,备注) 
 SELECT    '1 ',人员表.Guid,人员表.名称,人员表.电话,机构表.Guid,机构表.名称,机构表.编码, '测试数据,可以删除! ' 
 FROM   机构表,人员表 
 WHERE   (机构表.Guid   =    '2 ')   AND   (人员表.Guid   =    '1 ')   
 不知道,这样的效率如何? 
 这种方法和分别执行两次SELECT   取两张表内容后,在执行一个简单的INSERT\VALUES比那种更好?还有没有别的更好的思路?
------解决方案--------------------IO次数多,效率低,第二种较好
------解决方案--------------------在执行一个简单的INSERT\VALUES效果好   
 像 jacobsan(梅) 所说  
 ------------------------- 
 还提供一种思路,写buffer,一次写入txt文档,再通过bcp导入 
 ----------------------------- 
 数据多这种方法好!