REGEXP donne un TRUE ou FALSE selon que l'expression testée correspond à l'expression régulière donc ce n'est pas un REGEXP qu'il te faut.
Si toutes tes url sont construites de la même manière et tu ne veux que la partie comprise entre http:// et le premier / suivant, il faut jouer avec les fonctions de texte de MySQL.
Commençons par enlever le http://, soit 7 caractères :
SELECT RIGHT(url, LENGTH(url) - 7)
Ensuite cherchons la position du premier / dans ce qui reste :
SELECT LOCATE('/', RIGHT(url, LENGTH(url) - 7))
Puis ne conservons que les caractères à gauche de cette position :
SELECT LEFT(RIGHT(url, LENGTH(url) - 7), LOCATE('/', RIGHT(url, LENGTH(url) - 7)) - 1)
Vite fait alors à tester.
Partager