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

基本的に、「ENTERED_NAME」と同じ IP アドレスにリンクするすべての名前を取得しようとしています。

「GLOB」に相当する MySQL はありますか?

4

2 に答える 2

2

GLOBワイルドカードを使用します。たとえばGLOB 'Foo*'、 で始まるものに一致させFooます。Mysql はこれをサポートしていませんが、次のように文字列を変換して動作させることができますLIKE

WHERE IP LIKE BINARY REPLACE('ENTERED_NAME', '*', '%') -- replace * with %
于 2013-01-05T01:46:59.443 に答える
1
SELECT DISTINCT `Name` FROM (
    SELECT * FROM `Aliases` WHERE ( `IP` LIKE '%[entered_name]%' ) ORDER BY `Datetime` DESC
)

...また...

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

...ここで [entered_name] はそれに応じて変化します。

于 2013-01-04T23:44:58.380 に答える