用于选择IP和名称范围的SQL查询
如何选择具有给定IP和名称“admin”之一的记录 我有这个IP,但觉得这不是最好的方式分组范围。如评论中所述,我想选择IP为“x”或“y”或“z”的“名称”用于选择IP和名称范围的SQL查询,sql,sql-server,Sql,Sql Server,如何选择具有给定IP和名称“admin”之一的记录 我有这个IP,但觉得这不是最好的方式分组范围。如评论中所述,我想选择IP为“x”或“y”或“z”的“名称” 在子句中使用,而不是或语句: SELECT DISTINCT (name) AS name FROM log WHERE ip IN ('08.88.16.98','03.12.27.226','03.23.113.116','06.204.69.183','07.31.0.209') AND name = 'admin'; IN运
在子句中使用
,而不是或
语句:
SELECT DISTINCT (name) AS name
FROM log
WHERE ip
IN ('08.88.16.98','03.12.27.226','03.23.113.116','06.204.69.183','07.31.0.209')
AND name = 'admin';
IN运算符允许您在WHERE中指定多个值
条款
作为旁注,如果要排除值,可以在IN
子句之前使用NOT
子句,例如:
NOT IN ('08.88.16.98','03.12.24.254','03.23.113.189');
请在此阅读更多信息:您可以为所需的ip地址添加一个新表。给它ips。然后连接两个表:
SELECT DISTINCT (name) AS name
FROM `log`
JOIN `ips` ON (log.ip = ips.ip);
您想选择一系列IP地址吗?我想选择IP地址可能为“x”、“y”或“z”的“名称”…请参阅我的更新答案。@Ultra。您的ip地址是否真的以前导的0
存储?格式(在我看来)似乎不匹配,因为'08.88.16.98''8.88.16.98'
。
SELECT DISTINCT (name) AS name
FROM `log`
JOIN `ips` ON (log.ip = ips.ip);