gpt4 book ai didi

mysql - 子查询到LIKE条件mysql

转载 作者:行者123 更新时间:2023-11-29 11:55:57 25 4
gpt4 key购买 nike

我正在尝试根据另一个查询的结果进行查询,主要查询是这样的:

    SELECT d.nombre, d.apellido,em.codigo, em.descripcion, d.iddocente, em.idequipoMulti 
FROM docenteequipomulti dem
INNER JOIN docente d ON dem.docente_iddocente=d.iddocente
INNER JOIN equipomulti em ON dem.equipoMulti_idequipoMulti=em.idequipoMulti
WHERE
dem.iddocenteEquipoMulti LIKE '%(subquery)%'

没有 where它显示了所有值,但我必须通过子查询返回的值来过滤它们。

这是子查询:

SELECT concat_ws ('-', m.numModulo, p.periodo) AS MPeriodo FROM modulos m INNER JOIN periodo p ON m.periodo_idperiodo=p.idperiodo WHERE m.estado=1

该查询总是会得到一个值,例如“1-2015”,但我将子查询放入“()”中并且不起作用。我做错了什么?

编辑:我有一些像这样的 ID

1--1-2015--Eq1

1--1-2015--Eq2

2--1-2015--Eq3

1--2-2015--Eq1

这个想法是过滤那些包含“1-2015”的 id,无论它们还有什么,因此它必须只显示 3 行,不包括最后一行。

最佳答案

已编辑以满足更改后的问题

您应该在 JOIN 中包含 modulos 并在 JOIN ... ON 中进行过滤:

SELECT d.nombre, d.apellido,em.codigo, em.descripcion, d.iddocente, em.idequipoMulti 
FROM docenteequipomulti dem
INNER JOIN docente d ON dem.docente_iddocente=d.iddocente
INNER JOIN equipomulti em ON dem.equipoMulti_idequipoMulti=em.idequipoMulti
JOIN modulos m ON (dem.iddocenteEquipoMulti LIKE concat('%',m.numModulo, '-', p.periodo,'%') AND m.estado=1)
JOIN periodo p ON m.periodo_idperiodo=p.idperiodo;

关于mysql - 子查询到LIKE条件mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33191305/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com