Antes de nada gracias por la ayuda.
Tengo la siguiente sentencia:
Código:
En este caso me devuelve como resultado el valor 6. Esta sentencia devuelve siempre un integer.SELECT distinct p.id_perfil FROM perfiles AS p, usuarios AS u, tipo_perfil AS tp WHERE p.id_tipoperfil = ( SELECT distinct tp.id_tipoperfil FROM tipo_perfil AS tp, perfiles as p WHERE tp.Descripcion ='Leer' ) AND p.perfil ='Editor'
He creado la tabla TEMP con un único campo de tipo INT, id_perfil.
Bien, si yo intento insertar el valor de la sentencia anterior de esta manera:
Código:
No da error, incluso inserta un registro, pero en el campo id_perfil me pone como valor 0, cuando en este caso debería ser 6.INSERT INTO TEMP (id_perfil) VALUES ("SELECT distinct p.id_perfil FROM perfiles AS p, usuarios AS u, tipo_perfil AS tp WHERE p.id_tipoperfil = ( SELECT distinct tp.id_tipoperfil FROM tipo_perfil AS tp, perfiles as p WHERE tp.Descripcion ='Leer' ) AND p.perfil ='Editor'")
No sé porque ocurre

Podrías echarme un cable?
P.D.: también he probado de quitar las " de la SELECT y también utituirlas con ' pero en estos casos si que da error:
debug : #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT distinct p.id_perfil FROM perfiles AS p, usuarios AS u, tipo_perfil AS tp' at line 1{"success":false,"error":"
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT distinct p.id_perfil FROM perfiles AS p, usuarios AS u, tipo_perfil AS tp' at line 1<\/div>"}
Gracias a tod@s
Gracias