表结构为
ip phone_type
192.168.1.100 Mozilla/5.0 (iPhone)
192.168.1.100 Nokia6120c/7.20;
192.168.1.101 Mozilla/5.0 (iPhone)
192.168.1.103 Nokia6120c/7.20;
192.168.1.100 Mozilla/5.0 (iPhone) 要求 同ip 和同设备只算一条记录。。求有多少条记录?sql语句写出来。3q
ip phone_type
192.168.1.100 Mozilla/5.0 (iPhone)
192.168.1.100 Nokia6120c/7.20;
192.168.1.101 Mozilla/5.0 (iPhone)
192.168.1.103 Nokia6120c/7.20;
192.168.1.100 Mozilla/5.0 (iPhone) 要求 同ip 和同设备只算一条记录。。求有多少条记录?sql语句写出来。3q
解决方案 »
- 关于好友关系建立的表结构设计?
- 是我理解有问题还是MySQL的问题?
- mysql存储过程报语法错误
- 如何在update里更新日期信息
- MSSQL2005到MYSQL5.1迁移问题
- 请问mysql的C API 怎么写数据库?(奖励100分)
- sos! 请问哪位知道在windows下c++怎样和mysql连接,在下感激不尽
- 求问各位大大MYSQL一般用什么字符集兼容性好些啊
- wordpress误删除数据库,怎么导入备份的?
- 菜鸟一个,mysql.sock和mysql.sock.lock什么关系啊
- 同ip 和同设备只算一条记录。。求有多少条记录?sql语句写出来。
- mysql.cnf配置后启动不了~
192.168.1.100 Mozilla/5.0 (iPhone)
192.168.1.100 Nokia6120c/7.20;
算两条,则用1楼的DISTINCT就行了。
如果 192.168.1.100 Mozilla/5.0 (iPhone)
192.168.1.100 Nokia6120c/7.20;
192.168.1.101 Mozilla/5.0 (iPhone)这三条只算一条,则算法比较复杂一点儿。 (不要高估你的汉语表达能力或者我的汉语理解能力)
建议你列出你的表结构,并提供测试数据以及基于这些测试数据的所对应正确结果。
参考一下这个贴子的提问方式http://topic.csdn.net/u/20091130/20/8343ee6a-417c-4c2d-9415-fa46604a00cf.html
1. 你的 create table xxx .. 语句
2. 你的 insert into xxx ... 语句
3. 结果是什么样,(并给以简单的算法描述)
4. 你用的数据库名称和版本(经常有人在MS SQL server版问 MySQL)
这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。
http://topic.csdn.net/u/20090501/15/7548d251-aec2-4975-a9bf-ca09a5551ba5.html
http://topic.csdn.net/u/20100428/09/BC9E0908-F250-42A6-8765-B50A82FE186A.html
http://topic.csdn.net/u/20100626/09/f35a4763-4b59-49c3-8061-d48fdbc29561.html8、如何给分和结贴?
http://community.csdn.net/Help/HelpCenter.htm#结帖
+---------------+----------------------+
| ip | phone_type |
+---------------+----------------------+
| 192.168.1.100 | Mozilla/5.0 (iPhone) |
| 192.168.1.100 | Nokia6120c/7.20 |
| 192.168.1.101 | Mozilla/5.0 (iPhone) |
| 192.168.1.103 | Nokia6120c/7.20 |
| 192.168.1.100 | Mozilla/5.0 (iPhone) |
+---------------+----------------------+
5 rows in set (0.00 sec)mysql> select count(*) from asdaa;
+----------+
| count(*) |
+----------+
| 5 |
+----------+
1 row in set (0.00 sec)mysql> select count(distinct ip,phone_type) from asdaa;
+-------------------------------+
| count(distinct ip,phone_type) |
+-------------------------------+
| 4 |
+-------------------------------+
1 row in set (0.00 sec)楼主不是要这样的结果?那楼主把需要的结果给贴出来;
MySQL Data TransferSET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for lk
-- ----------------------------
DROP TABLE IF EXISTS `lk`;
CREATE TABLE `lk` (
`ip` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`phone_type` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;-- ----------------------------
-- Records
-- ----------------------------
INSERT INTO `lk` VALUES ('192.168.1.100 ', 'Mozilla/5.0 (iPhone) ');
INSERT INTO `lk` VALUES ('192.168.1.100 ', 'Nokia6120c/7.20;\r\nNokia6120c/7.20;\r\nNokia6120c/7.20;\r\nNokia6120c/7.20');
INSERT INTO `lk` VALUES ('192.168.1.101 ', 'Mozilla/5.0 (iPhone)\r\nMozilla/5.0 (iPhone)\r\nMozilla/5.0 (iPhone)\r\nMozilla/5.0 (iPhone)\r\nMozilla/5.0 (iPhone)\r\n');
INSERT INTO `lk` VALUES ('192.168.1.103', 'Nokia6120c/7.20');
INSERT INTO `lk` VALUES ('192.168.1.100', 'Mozilla/5.0 (iPhone)');
结果应该为:
192.168.1.100 Mozilla/5.0 (iPhone)
192.168.1.100 Nokia6120c/7.20;
192.168.1.101 Mozilla/5.0 (iPhone)
192.168.1.103 Nokia6120c/7.20;
4条结果!!!不知道这样清楚没!