现有表t_task_vs_ip结构如下: task_ id start_ip end_ip 内容如下:1 0.0.0.0 0.0.0.12 192.168.0.1 192.168.0.1 2 192.168.0.13 192.168.0.132 192.168.0.16 192.168.0.16 要求经过查询以后变为:
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/12 08:51:32
![现有表t_task_vs_ip结构如下: task_ id start_ip end_ip 内容如下:1 0.0.0.0 0.0.0.12 192.168.0.1 192.168.0.1 2 192.168.0.13 192.168.0.132 192.168.0.16 192.168.0.16 要求经过查询以后变为:](/uploads/image/z/14966881-25-1.jpg?t=%E7%8E%B0%E6%9C%89%E8%A1%A8t_task_vs_ip%E7%BB%93%E6%9E%84%E5%A6%82%E4%B8%8B%EF%BC%9A+task_+id+start_ip+end_ip+%E5%86%85%E5%AE%B9%E5%A6%82%E4%B8%8B%EF%BC%9A1%E3%80%80%E3%80%800.0.0.0%E3%80%80%E3%80%800.0.0.12%E3%80%80%E3%80%80192.168.0.1++++++192.168.0.1+2+++++++192.168.0.13+++++192.168.0.132++++++192.168.0.16+++++++192.168.0.16++%E8%A6%81%E6%B1%82%E7%BB%8F%E8%BF%87%E6%9F%A5%E8%AF%A2%E4%BB%A5%E5%90%8E%E5%8F%98%E4%B8%BA%EF%BC%9A)
现有表t_task_vs_ip结构如下: task_ id start_ip end_ip 内容如下:1 0.0.0.0 0.0.0.12 192.168.0.1 192.168.0.1 2 192.168.0.13 192.168.0.132 192.168.0.16 192.168.0.16 要求经过查询以后变为:
现有表t_task_vs_ip结构如下: task_ id start_ip end_ip 内容如下:
1 0.0.0.0 0.0.0.1
2 192.168.0.1 192.168.0.1
2 192.168.0.13 192.168.0.13
2 192.168.0.16 192.168.0.16
要求经过查询以后变为:
task_ id start_ip end_ip
1 0.0.0.0 0.0.0.1
2 192.168.0.1 192.168.0.16
这样的查询结果该如何实现呢?
现有表t_task_vs_ip结构如下: task_ id start_ip end_ip 内容如下:1 0.0.0.0 0.0.0.12 192.168.0.1 192.168.0.1 2 192.168.0.13 192.168.0.132 192.168.0.16 192.168.0.16 要求经过查询以后变为:
CREATE TABLE t_task_vs_ip (
task_id int,
start_ip varchar(15),
end_ip varchar(15)
);
GO
INSERT INTO t_task_vs_ip
SELECT 1,'0.0.0.0','0.0.0.1' UNION ALL
SELECT 2,'192.168.0.1','192.168.0.1' UNION ALL
SELECT 2,'192.168.0.13','192.168.0.13' UNION ALL
SELECT 2,'192.168.0.16','192.168.0.16'
GO
1> SELECT
2> task_id,MIN(start_ip),MAX(end_ip)
3> FROM
4> t_task_vs_ip
5> GROUP BY
6> task_id;
7> GO
task_id
----------- --------------- ---------------
1 0.0.0.0 0.0.0.1
2 192.168.0.1 192.168.0.16
(2 行受影响)