我有一个这样的表结构:
TABLE NAME : counter
id | datetime | url | ip
-------------------------------------------
1 |2013-04-12 13:27:09 | url1 | ip01
2 |2013-04-13 10:55:43 | url2 | ip02
3 |2013-04-14 11:14:12 | url1 | ip03
4 |2013-04-15 23:23:55 | url2 | ip04
5 |2013-05-02 08:34:44 | url1 | ip03
通过智能SELECT
查询,我想获取3列:
唯一网址| ip数| 不同IP的数量
| 对于每个不同的URL | 对于每个不同的网址
-------------------------------------------------- -----------------
url1 | 3 | 2个
url2 | 2 | 2个
我在的此解决方案的帮助下提出了我的查询,该查询为我提供了我需要的前两列:
SELECT url, COUNT(*) AS total_ip FROM counter GROUP BY url ORDER BY total_ip DESC
但是,如何将第三列也添加到查询中?
你能帮我么?
正如您自己提到的那样,您可以使用DISTINCT
关键字来获取与众不同URL
的。使用COUNT
获得的计数IP
和COUNT(DISTINCT ID)
获得不同的IP
每个URL
小号
试试这个:
SELECT DISTINCT URL AS D_URL
,COUNT(IP) AS IP
,COUNT(DISTINCT IP) AS D_IP
FROM counter
GROUP BY URL
输出:
╔═══════╦════╦══════╗
║ D_URL ║ IP ║ D_IP ║
╠═══════╬════╬══════╣
║ url1 ║ 3 ║ 2 ║
║ url2 ║ 2 ║ 2 ║
╚═══════╩════╩══════╝
问题内容: 是否有可能获得总表,并在相同的查询。像这样的东西 问题答案: 您可以随时尝试执行以下操作: 该子句将为您提供查询中所有行的计数。
问题内容: 我有一个Oracle表,其中包含一组范围(RangeA和RangeB)。这些列是varchar,因为它们可以同时容纳数字和字母数字值,如以下示例所示: 我需要执行一个查询,该查询仅返回具有数值的记录,并对该查询执行Count。到目前为止,我已经尝试过使用两个不同的查询来做到这一点,但没有任何运气: 查询1: 查询2: 子查询工作正常,因为我得到的两个记录都只有数字值,但是查询的COUN
我想使用QueryDSL库构建select count查询,如下所示: 中选择计数(1) 我创建了下一个代码: 由于结果selectStatement是Next: 能否请一些人建议如何重写上面的代码
问题内容: 我有一个关于MYSQL中的选择查询的问题 我有两个不同的表,我想获得一定的结果 我使用了COUNT方法,该方法只给我结果(> = 1) 但实际上,我想使用包含零的所有计数怎么做? 我的查询是: 第一张桌子:Content_hits 第二张表:Content_tag 结果但不完整 例如:tag_id = 1的Subsrciber6应该具有count(*)= 0 问题答案: 现在,您已经进
问题内容: 我需要一个相对简单的查询,但是JPA使其很难创建。 SQL变量如下所示: [编辑:OrderID不是主键。表格中可以有更多等于的OrderId] 我需要设置一个传递给我的方法的变量。 我找到了文档, 但似乎无法将它们全部包装在一起。 这是我到目前为止的内容: 问题答案:
问题内容: 我正在尝试从以下查询中获取行数。我只得到行计数为1,但有35条记录。您能否让我知道如何从内部查询中获取计数? 谢谢 问题答案: 您缺少FROM,需要为子查询指定别名。