No abras nuevos threads para tratar el mismo tema. Continúa a partir de donde lo dejaste, porque el tema aún no está resuelto.
El rpimero problema que tienes es que tienes un muy mal modelo de datos, porque tienes una tabla única para la relacion entre artistas y canciones, cuando esa relación debería ser una tabla relacional distinta. Esto es obligatorio para las relaciones N:M como esa.
El otro problema, la variable en el LIMIT dependerá de la versión de MySQL que haya en el host, por cuanto LIMIT no admite variables en las versiones de MySQL anteriores a la 5.1.x.
Por otro lado, obtener una lista de diez canciones ordenadas en forma aleatoria es tan simple como:
Código MySQL:
Ver originalSELECT C.nombre
, idvideo
, CONCAT(artista
, ', ', artista2
, ', ', artista3
, ', ', artista4
) artistas
WHERE FIND_IN_SET(artista
, CONCAT(artista
, ', ', artista2
, ', ', artista3
, ', ', artista4
)
Por supuesto que esto había que afinarlo, pero la idea más usada para este tipo de coasa es esta.
Repito que el modelo de la tabla que tienes es erróneo, y deberías considerar corregirlo antes de seguir adelante con un esquema profundamente defectuoso..