SQL Join(全部来自一个表,一个来自另一个)

时间:2015-05-07 18:16:16

标签: sql-server

我正在尝试从[condition1]上的一个表中检索所有字段,并在[condition2]的结果中组合另一个表中的一个字段,但我的连接还不是很热:

<div class="col-md-4 md-margin-bottom-20 hidden-sm hidden-xs" style="z-index:1">
   <div class="">
       <div class="col-sm-12 col-md-12" style="padding-left: 0; padding-right: 0; z-index:1;">
           <div class="headline" style="z-index:1;">
               <h2>Recent Job Pictures</h2>
           </div>
           <div class="" style="z-index:2;">
               <div style="margin-top:-46px; z-index:2;">
                   <a data-pin-do="embedUser" href="http://www.pinterest.com/davincispainter/" data-pin-scale-width="65"  data-pin-scale-height="162" data-pin-board-width="360"></a>
               </div>
               <!-- Please call pinit.js only once per page -->
               <script type="text/javascript" async src="//assets.pinterest.com/js/pinit.js"></script>
           </div>
       </div>
   </div>
</div>

非常感谢帮助

4 个答案:

答案 0 :(得分:3)

您的语法需要一些调整。

SELECT t1.*, t2.myField2
    FROM table1 t1
        INNER JOIN table2 t2
            ON t1.condition = t2.condition
                AND t1.condition2 = t2.condition2
    WHERE t1.myField = 123;

答案 1 :(得分:1)

正确的语法是

SELECT table1.*, table2.field1
FROM table1
INNER JOIN table2
ON table1.condition = table2.condition 
   AND table1.condition2 = table2.condition2
WHERE myField=123

答案 2 :(得分:0)

SELECT t1.*, t2.MyField2
FROM table1 t1
INNER JOIN table2
   ON t1.condition = t2.condition 
  AND t1.condition2 = t2.condition2
WHERE t1.myField=123

问题。

  • 您希望在结果中显示的所有列必须列在最外面的选择中。
  • 除非您执行unionsub query
  • ,否则您不需要多个SELECT语句
  • 如果将其包装在()中并且将其别名为,则只能在子查询中使用选择。 Select field from table A inner join (Select * from table2) B on A.ID = B.ID
  • Where子句属于FROM和连接和连接标准之后。

一般而言...... SQL语法顺序为:

  1. SELECT
  2. FROM
  3. 加入
  4. WHERE
  5. GROUP BY
  6. HAVING
  7. ORDER BY

答案 3 :(得分:-1)

或者,您可以将连接条件放在where子句中并连接到第二个表,如下所示:

SELECT t1.*
      ,t2.myField2
FROM table1 t1
    ,table2 t2
WHERE t1.condition = t2.condition
    AND t1.condition2 = t2.condition2
    AND myField = 123
相关问题