我可以在 SQL 查询中添加一些 PHP 代码吗?

Can I add some PHP code into an SQL query?

我目前正在 运行 使用以下 SQL 脚本从数据库中提取交易数据(每个交易一行)的脚本,该脚本正在 运行 MySQL Workbench。

SELECT 
id,
merchant_id, 
affiliate_id, 
date, 
sale_amount, 
commission, 
ip

FROM transactions.transaction201505  

table t.transactions 中的一列是 IP 地址。有没有办法在 SQL 脚本中嵌入此 PHP 脚本(或达到此效果的函数): php function geoip_country_name_by_addrhttp://php.net/manual/en/function.geoip-country-code-by-name.php

我见过很多将 MySQL 添加到 PHP 的示例,但实际上我想以相反的方式将国家/销售城市添加到我的数据中,以便结果看起来像下面的示例,可能 运行 来自 MySQL Workbench 等工具。我无权访问此数据库上的 运行 PHP 脚本,因此需要 SQL 的解决方案。

在此先感谢您提供的任何帮助。

杰米

不,这不是直接可能的。您可以在外部模块(例如 .DLL、.so 或 .dylib)中编写 UDF(用户定义函数),但在这样的模块中使用 PHP 可能也是不可能的(因为 PHP 是一种脚本语言,您需要将 UDF 编译成二进制代码)。但是,MySQL 有许多内置函数 (https://dev.mysql.com/doc/refman/5.7/en/miscellaneous-functions.html)。虽然这里不是你想要的。