1. 程式人生 > >Sql 求兩列去重後的總數量

Sql 求兩列去重後的總數量

邏輯

    1. 先去分別去重2列(SrcIP, DstIP)的值
    1. 查詢一列(SrcIP)不在另一列(DstIP)的所有資料
    1. count(SrcIP)是不在dstIP中的資料個數。
    1. 2列(SrcIP, DstIP)的資料相加。

SQL

select count(SrcIP)+(select count(DISTINCT(DstIP)) from netinfo) as co from 
    (select DISTINCT(SrcIP) from netinfo) as src
        where src.SrcIP not in 
        (select DISTINCT
(DstIP) from netinfo);

號外

MYSQL時間轉換函式

select FROM_UNIXTIME(‘1479398400’), UNIX_TIMESTAMP(‘2016-11-18 00:00:00’);

// 2016-11-18 00:00:00.000000 , 1479398400

select FROM_UNIXTIME(‘1479484799’), UNIX_TIMESTAMP(‘2016-11-18 23:59:59 999’);

// 2016-11-18 23:59:59.000000 , 1479484799