3 votes

Quel est l'équivalent MySQL de ce code SQLite ?

"SELECT DISTINCT `Name` FROM ( SELECT * FROM `Aliases` WHERE ( `IP` GLOB 'ENTERED_NAME' ) ORDER BY `Datetime` DESC )"

En gros, j'essaie d'obtenir tous les noms qui sont liés à la même adresse IP que le "ENTERED_NAME".

Existe-t-il un équivalent MySQL de "GLOB" ?

2voto

Bohemian Points 134107

GLOB utilise des caractères de substitution, par exemple GLOB 'Foo*' pour correspondre à tout ce qui commence par Foo . Mysql ne supporte pas cela, mais vous pouvez convertir votre chaîne pour qu'elle fonctionne avec LIKE comme suit :

WHERE IP LIKE BINARY REPLACE('ENTERED_NAME', '*', '%') -- replace * with %

1voto

Gordon Freeman Points 3482
SELECT DISTINCT `Name` FROM (
    SELECT * FROM `Aliases` WHERE ( `IP` LIKE '%[entered_name]%' ) ORDER BY `Datetime` DESC
)

...ou...

SELECT DISTINCT `Name` FROM (
    SELECT * FROM `Aliases` WHERE ( `IP` = '[entered_name]' ) ORDER BY `Datetime` DESC
)

...où [entered_name] change en conséquence.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X