很抱歉所有的编辑,但这似乎给了我与我需要的相反。我愿意接受任何建议!
$r = mysql_query("SELECT * FROM warehouselogin LEFT OUTER JOIN warehousedatains on warehouselogin.instructor_password = warehousedatains.instructor_password && warehousedatains.unitnumber='$unitnumber' && warehousedatains.year='$year' && warehousedatains.outcomenumber='$outcomenumbercheck' WHERE warehousedatains.instructor_password IS NOT NULL GROUP BY warehouselogin.InstructorName ASC");
好的伙计......我还有一些麻烦,经过一段时间的斗争,我再次寻求帮助。
这个查询正在运行......它给了我左表中任何教师在提交的年份的右表中不存在。
$r = mysql_query("SELECT * FROM warehouselogin LEFT OUTER JOIN warehousedatains on warehouselogin.instructor_password = warehousedatains.instructor_password && warehousedatains.year='$year' WHERE warehousedatains.instructor_password IS NULL GROUP BY warehouselogin.InstructorName ASC");
但是,当我尝试比较其他提交的变量时,它将无效。
$r = mysql_query("SELECT * FROM warehouselogin LEFT OUTER JOIN warehousedatains on warehouselogin.instructor_password = warehousedatains.instructor_password && warehousedatains.year='$year' && warehousedatains.unitnumber='$unitnumber' && warehousedatains.outcomenumber='$outcomenumbercheck' WHERE warehousedatains.instructor_password IS NULL GROUP BY warehouselogin.InstructorName ASC");
我需要匹配这些额外的值。否则,我会从每个部门获得教师。我在这里错过了什么?非常感谢您的帮助!
感谢大家的建议。我终于能够通过将年变量语句直接放在查询上方来获得下面的查询($ year =“$ _ POST [year]”。我真的很感激帮助!
我正在尝试根据instructor_password
字段加入两个表,并回显任何非匹配项。基本上,我正在寻找在第一个表(warehouselogin
)中找到的密码,这些密码在提交年份的第二个表(warehousedatains
)中找不到。在使用类似于下面的连接之前我已经完成了这个,但是我错过了一些东西。这当前一无所获。
SELECT * FROM warehouselogin
LEFT OUTER JOIN warehousedatains on warehouselogin.instructor_password = warehousedatains.instructor_password && warehousedatains.year='?'
WHERE warehousedatains.instructorpassword IS NULL
ORDER BY warehousedatains.InstructorName ASC
?
中的year='?'
具有特定值。
答案 0 :(得分:1)
SELECT * FROM warehouselogin
WHERE warehouselogin.instructor_password
NOT IN
(SELECT warehousedatains.instructor_password FROM warehousedatains)
答案 1 :(得分:0)
在@misthacoder的帮助下,我终于能够使这个查询工作,并在PHP脚本中提供我需要的结果。我想分享以防其他人有类似的问题。非常感谢那些试图提供帮助的人。
$r = mysql_query("SELECT * FROM warehouselogin WHERE unitnumber='$unitnumber' && warehouselogin.instructor_password NOT IN (SELECT warehousedatains.instructor_password FROM warehousedatains WHERE unitnumber='$unitnumber' && outcomenumber='$outcomenumbercheck')");