SELECT (h.horario), h.codigo
FROM horarios as h
JOIN horario_turma as h_t
ON(h.codigo != h_t.cd_horario)
WHERE h_t.cd_turma = 'HTJ009'
AND h_t.cd_dia = 2
AND h.cd_turno = 1
我试图弄清楚是否有可能从另一个表中获取h.cd_turno
值并在同一个查询中使用,因为这个值会变化。所以,我必须从查询中获取此值,然后将值传递给PHP并使用此值执行另一个查询。有没有办法在同一个查询中执行此操作?
有一个名为turmas(codigo, cd_turno)
的表格。我将获得codigo
值,在这种情况下为HTJ009
,我想选择cd_turno
值。
用于获取值的查询:
SELECT cd_turno FROM turmas WHERE codigo='HTJ009'
答案 0 :(得分:0)
SELECT (h.horario), h.codigo
FROM horarios as h
JOIN horario_turma as h_t
ON(h.codigo = h_t.cd_horario)
WHERE h_t.cd_turma = 'HTJ009'
AND h_t.cd_dia = 2
AND h.cd_turno = 1 and h_t.cd_horario is null
答案 1 :(得分:0)
您可以使用子查询,如下所示:
SELECT (h.horario), h.codigo
FROM horarios as h
JOIN horario_turma as h_t
ON(h.codigo != h_t.cd_horario)
WHERE h_t.cd_turma = 'HTJ009'
AND h_t.cd_dia = 2
AND h.cd_turno = (SELECT cd_turno FROM turmas WHERE codigo='HTJ009')
在这种情况下,请记住,子查询只返回一个结果很重要,否则您将遇到错误。如果您确实看到了这样的错误,则可能需要调整子查询以确保只返回一个结果。