Convertendo um IP em um Longo no MySQL

Estou tentando usar oip2country tabela para mostrar as bandeiras dos usuários no meu site.

A coisa mais simples que criei é escrever uma instrução SQL que leve os usuários da tabela de sessões e consultas para verificar se o respectivo IP está em um determinado intervalo para descobrir seu país / bandeira.

É simples, mas também perigoso, porque quando há 300 usuários on-line para mostrar e eu os pego na tabela de sessões, consultando seus países para exibir as bandeiras, certamente haverá um grande uso de memória.

Agora eu tentei fazer isso em uma única consulta:

SELECT 
  s.session_ip, 
  ipc.*
FROM 
  session AS s
    LEFT JOIN ip2country AS ipc 
    ON ipc.ip_lo <= s.session_ip AND ipc.ip_hi >= s.session_ip
WHERE 
  s.session_time  > '".( time() - 60) )."' 

Agora está claro que a consulta acima está errada porque os IPs salvos noip2country tabela é um número inteiro, por exemplo 1000013824 e os IPs armazenados na tabela de sessões são as representações de string dos IPs, por exemplo 193.169.0.0

Eu sei como converter de um IP para um longo em PHP com oip2long(), mas existe algum método equivalente no MySQL para que eu não precise fazer duas consultas?

questionAnswers(1)

yourAnswerToTheQuestion