簡體   English   中英

MySql使用condiction離開了外連接

[英]MySql left outer join with condiction

我有兩張桌子

    student_info(id,mobile,cTId,lvDate)

    term_marks(tmId,stdId,cTId,marks,year)

現在我想找出所有不存在term_marks的學生id,這取決於其他檢查,所以我使用這個查詢,但它返回所有匹配的,不匹配的兩個表

     $sql = "select * from student_info si LEFT OUTER JOIN term_marks tm ON si.id=tm.stdId and si.cTId=tm.cTId AND tm.year=$year)
WHERE si.cTId=$cTId and si.lvDate=0";

我也試過了

      $sql = "select * from student_info si left outer JOIN term_marks tm where si.id=tm.stdId 
     and si.cTId=tm.cTId and si.cTId=$cTId and tm.year=$year and si.lvDate=0";  

你能幫助我嗎 ?

SELECT si.* 
FROM student_info si 
WHERE si.cTId = $cTId 
  AND si.lvDate = 0
  AND si.id NOT IN 
  ( 
    SELECT tm.stdId 
    FROM term_marks tm 
    WHERE tm.year = $year
  ) 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM