我有一个 IP 作为无符号整数存储在数据库中,但是当我尝试运行此选择时,我收到语法错误。我已经尝试过以下两个版本。
SELECT `id`, INET_NTOA(`from`) AS from, INET_NTOA(`to`) AS to, `campaignid` FROM `customiplist` WHERE `campaignid` = 1
SELECT id, INET_NTOA(from) AS from, INET_NTOA(to) AS to, campaignid FROM customiplist WHERE campaignid = 1
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'from, INET_NTOA(`to`) AS to, `campaignid` FROM `customiplist` WHERE `campa' at line 1
我觉得我要疯了,因为所有的列名和表名都是正确的。
最佳答案
FROM
和 TO
为 reserved keywords in MySQ L. 如果您要使用它们,您必须将它们包裹在刻度中:
SELECT `id`, INET_NTOA(`from`) AS `from`, INET_NTOA(`to`) AS `to`, `campaignid` FROM `customipblocklist` WHERE `campaignid` = 1
老实说,这些对于列名来说都是糟糕的选择。如果可能的话,我建议更改它们。
关于php - mysql select 使用 inet_ntoa 出现 sql 语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22951651/