PHP - Subconsulta Mysqli con repetición de variable y IN con Like

 
Vista:
sin imagen de perfil
Val: 10
Ha aumentado su posición en 18 puestos en PHP (en relación al último mes)
Gráfica de PHP

Subconsulta Mysqli con repetición de variable y IN con Like

Publicado por santa (6 intervenciones) el 17/08/2018 23:42:54
Tengo una subconsulta que busca todos los géneros que tiene un libro determinado, y la consulta hace que encuentre todos los libros que tienen los géneros de la subconsulta y se crea un contador de las veces que se repiten los mismos libros y crea una nueva columna del contador. Quedando la consulta ordenada según los libros que se repiten más veces a menos.

Esta consulta funciona, pero el problema surge cuando intenté insertar la variable en la parte del servidor con Mysqli. Intento hacerlo orientado a objetos, pero no devuelve resultados. Bueno, he buscado por todas las publicaciones, pero nada funcionó. Intenté REGEXP y similares, pero devuelve resultados que no son correctos.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// He puesto la asignación de letras para que ese entienda mejor
$book = $get_id_book;
$book = "%$book%";
 
$result = $link->prepare ("SELECT b.name, COUNT(name) AS duplicated, c.arxive, t.type, t.name_type
FROM Books b, Covers c, Types t, Genres_book g
WHERE b.id_book = c.id_cover_book AND
b.id_book = g.id_genre_book AND
g.id_book_genre IN ( SELECT id_book_genre
                      FROM Book b1, Genres_book g1
                      WHERE b1.id_book = g1.id_genre_book AND
                      b1.id_book IN (?)) AND
 NOT (b.id_book = ?)
 GROUP BY b.name
 ORDER BY duplicated DESC");
 
$result->bind_param('i', $book);
 
if($result->execute()){
   $result->bind_result($name, $duplicated, $arxive, $type, $name_type);
   while ($result->fetch()) {
    echo "....";
   }
}

Donde
1
b1.id_book IN (?)
quiero algo como esto:
1
b1.id_book IN like ?
y que me repita la misma variable debajo
Estoy desesperado ya, a ver si alguien puede echarme una mano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 10
Ha aumentado su posición en 18 puestos en PHP (en relación al último mes)
Gráfica de PHP

Subconsulta Mysqli con repetición de variable y IN con Like

Publicado por santa (6 intervenciones) el 18/08/2018 03:30:08
No es que no sepa utilizar LIKE, pero lo que me refiero es que el codigo de arriba al probarlo en la base de datos funciona, pero en el PHP, al cambiar:

1
2
3
4
IN ( SELECT id_book_genre FROM Book b1, Genres_book g1 WHERE b1.id_book = g1.id_genre_book AND b1.id_book LIKE ?)
AND NOT (b.id_book Like ?) GROUP BY b.name ORDER BY duplicated DESC");

$result->bind_param('ii', $book,$book);

Probé sin
1
AND NOT (b.id_book Like ?)
y solo enlazar 1 parámetro, pero ambos devuelven 0 resultados...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar