亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫(kù)
12下一頁(yè)
最近訪問(wèn)板塊 發(fā)新帖
查看: 16994 | 回復(fù): 15
打印 上一主題 下一主題

查詢當(dāng)年/當(dāng)月/當(dāng)日數(shù)據(jù)。 [復(fù)制鏈接]

論壇徽章:
3
未羊
日期:2013-11-18 15:17:06酉雞
日期:2013-12-06 17:07:16天蝎座
日期:2014-06-11 12:37:07
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2013-11-19 13:54 |只看該作者 |倒序?yàn)g覽
30可用積分
本帖最后由 墨跡哥 于 2013-11-19 13:54 編輯

目前需求:
1、當(dāng)年的12個(gè)月的數(shù)據(jù)。如果沒(méi)有數(shù)據(jù)則為0.
2、當(dāng)月的所有天數(shù)的數(shù)據(jù)。如果沒(méi)有數(shù)據(jù)則為0.(這里有三個(gè)情況,2月有的時(shí)候是28天或多少天的,還有就是30天和31天的,實(shí)在難弄就統(tǒng)計(jì)當(dāng)月所有數(shù)據(jù)。)
3、當(dāng)日的24小時(shí)內(nèi)的數(shù)據(jù),如果沒(méi)有數(shù)據(jù)則為0.

例子:
  1. select count(*) from w3a_log_monitor_attack where attack_date like '%2013-01%' and attack_user='192.168.31.135' union all select count(*) from w3a_log_monitor_attack where attack_date like '%2013-02%' and attack_user='192.168.31.135' union all select count(*) from w3a_log_monitor_attack where attack_date like '%2013-03%' and attack_user='192.168.31.135' union all select count(*) from w3a_log_monitor_attack where attack_date like '%2013-04%' and attack_user='192.168.31.135' union all select count(*) from w3a_log_monitor_attack where attack_date like '%2013-05%' and attack_user='192.168.31.135';
復(fù)制代碼
表名:
  1. w3a_log_monitor_attack
復(fù)制代碼
字段意思:

  1. attack_date 日期字段
  2. attack_user 用戶字段
復(fù)制代碼

最佳答案

查看完整內(nèi)容

回復(fù) 4# 墨跡哥

論壇徽章:
2
酉雞
日期:2014-02-19 09:11:08摩羯座
日期:2014-05-23 10:16:16
2 [報(bào)告]
發(fā)表于 2013-11-19 13:54 |只看該作者
  1. SELECT COUNT(*),CONCAT(YEAR(attack_date),'-',MONTH(attack_date),'-',DAYOFMONTH(attack_date)) FROM w3a_log_monitor_attack WHERE attack_user='192.168.31.135' and attack_date>DATE_SUB(CURDATE(),INTERVAL DAY(CURDATE())-1 DAY) GROUP BY CONCAT(YEAR(attack_date),'-',MONTH(attack_date),'-',DAYOFMONTH(attack_date))
  2. 你真懶。。。。
復(fù)制代碼
回復(fù) 4# 墨跡哥


   

論壇徽章:
3
未羊
日期:2013-11-18 15:17:06酉雞
日期:2013-12-06 17:07:16天蝎座
日期:2014-06-11 12:37:07
3 [報(bào)告]
發(fā)表于 2013-11-19 13:56 |只看該作者
@tiankafeiwu  來(lái)吧。。。暴風(fēng)雨來(lái)的更猛烈點(diǎn)把。。

論壇徽章:
2
酉雞
日期:2014-02-19 09:11:08摩羯座
日期:2014-05-23 10:16:16
4 [報(bào)告]
發(fā)表于 2013-11-19 14:42 |只看該作者
本帖最后由 tiankafeiwu 于 2013-11-19 14:43 編輯

1:當(dāng)年所有有數(shù)據(jù)的月份(按月分組):
  1. SELECT COUNT(*),CONCAT(YEAR(attack_date),'-',MONTH(attack_date)) FROM w3a_log_monitor_attack WHERE attack_user='192.168.31.135' GROUP BY CONCAT(YEAR(attack_date),'-',MONTH(attack_date))
復(fù)制代碼
2:全年按天分組,如果要當(dāng)月就加個(gè)where時(shí)間條件即可:
  1. SELECT COUNT(*),CONCAT(YEAR(attack_date),'-',MONTH(attack_date),'-',DAYOFMONTH(attack_date)) FROM w3a_log_monitor_attack WHERE attack_user='192.168.31.135' GROUP BY CONCAT(YEAR(attack_date),'-',MONTH(attack_date),'-',DAYOFMONTH(attack_date))
復(fù)制代碼
3:當(dāng)日24小時(shí),即當(dāng)天0點(diǎn)到當(dāng)前時(shí)間,限當(dāng)天:
  1. SELECT COUNT(*),HOUR(attack_date) FROM w3a_log_monitor_attack WHERE attack_user='192.168.31.135' GROUP BY HOUR(attack_date) WHERE attack_date > DATE(NOW())
復(fù)制代碼
2和3差不多。

沒(méi)有數(shù)據(jù)的0,你用程序控制下咯

論壇徽章:
3
未羊
日期:2013-11-18 15:17:06酉雞
日期:2013-12-06 17:07:16天蝎座
日期:2014-06-11 12:37:07
5 [報(bào)告]
發(fā)表于 2013-11-20 14:33 |只看該作者
回復(fù) 3# tiankafeiwu


    第一個(gè)可用。。。
    第二個(gè)要當(dāng)月所有天的。。。
    第三個(gè)報(bào)錯(cuò)。。。
  1. mysql> SELECT COUNT(*),HOUR(attack_date) FROM w3a_log_monitor_attack WHERE attack_user='192.168.31.135' GROUP BY HOUR(attack_date) WHERE attack_date > DATE(NOW());
  2. ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE attack_date > DATE(NOW())' at line 1
復(fù)制代碼

論壇徽章:
0
6 [報(bào)告]
發(fā)表于 2013-11-20 15:38 |只看該作者
當(dāng)月:

select count(*),date_format(attack_date,'%Y-%m-%s') as day from w3a_log_monitor_attack
where w3a_log_monitor_attack >= concat(DATE_SUB(CURDATE(),INTERVAL DAY(CURDATE())-1 DAY),' 00:00:00')
group by day;


當(dāng)日:

select count(*),date_format(attack_date,'%Y-%m-%s %H') as hour from w3a_log_monitor_attack
where w3a_log_monitor_attack >= concat(CURDATE(),' 00:00:00')
group by hour;

論壇徽章:
2
酉雞
日期:2014-02-19 09:11:08摩羯座
日期:2014-05-23 10:16:16
7 [報(bào)告]
發(fā)表于 2013-11-20 16:54 |只看該作者
本帖最后由 tiankafeiwu 于 2013-11-20 16:55 編輯

mysql> SELECT COUNT(*),HOUR(attack_date) FROM w3a_log_monitor_attack WHERE attack_user='192.168.31.135' and attack_date > DATE(NOW()) GROUP BY HOUR(attack_date) ;
把第二個(gè)where改成and就行了,疏忽了
回復(fù) 4# 墨跡哥


   

論壇徽章:
3
未羊
日期:2013-11-18 15:17:06酉雞
日期:2013-12-06 17:07:16天蝎座
日期:2014-06-11 12:37:07
8 [報(bào)告]
發(fā)表于 2013-11-20 17:39 |只看該作者
回復(fù) 5# wangjj20
  1. mysql> select count(*),date_format(attack_date,'%Y-%m-%s') as day from w3a_log_monitor_attack
  2.     -> where w3a_log_monitor_attack >= concat(DATE_SUB(CURDATE(),INTERVAL DAY(CURDATE())-1 DAY),' 00:00:00')
  3.     -> group by day;
  4. ERROR 1054 (42S22): Unknown column 'w3a_log_monitor_attack' in 'where clause'
  5. mysql>
  6. mysql>
  7. mysql>
  8. mysql> select count(*),date_format(attack_date,'%Y-%m-%s') as day from w3a_log_monitor_attack where w3a_log_monitor_attack >= concat(DATE_SUB(CURDATE(),INTERVAL DAY(CURDATE())-1 DAY),' 00:00:00') group by day;
  9. ERROR 1054 (42S22): Unknown column 'w3a_log_monitor_attack' in 'where clause'
復(fù)制代碼

論壇徽章:
3
未羊
日期:2013-11-18 15:17:06酉雞
日期:2013-12-06 17:07:16天蝎座
日期:2014-06-11 12:37:07
9 [報(bào)告]
發(fā)表于 2013-11-20 17:42 |只看該作者
回復(fù) 7# tiankafeiwu


    貌似都行了,我回頭加點(diǎn)數(shù)據(jù)試試。今天快下班了。。趕地鐵去。。。
  1. mysql> SELECT COUNT(*),HOUR(attack_date) FROM w3a_log_monitor_attack WHERE attack_user='192.168.56.101' and attack_date > DATE(NOW()) GROUP BY HOUR(attack_date) ;
  2. Empty set (0.01 sec)

  3. mysql>
  4. mysql>
  5. mysql> SELECT COUNT(*),CONCAT(YEAR(attack_date),'-',MONTH(attack_date),'-',DAYOFMONTH(attack_date)) FROM w3a_log_monitor_attack WHERE attack_user='192.168.31.135' and attack_date>DATE_SUB(CURDATE(),INTERVAL DAY(CURDATE())-1 DAY) GROUP BY CONCAT(YEAR(attack_date),'-',MONTH(attack_date),'-',DAYOFMONTH(attack_date));
  6. +----------+------------------------------------------------------------------------------+
  7. | COUNT(*) | CONCAT(YEAR(attack_date),'-',MONTH(attack_date),'-',DAYOFMONTH(attack_date)) |
  8. +----------+------------------------------------------------------------------------------+
  9. |      170 | 2013-11-5                                                                    |
  10. +----------+------------------------------------------------------------------------------+
  11. 1 row in set (0.01 sec)
復(fù)制代碼

論壇徽章:
3
未羊
日期:2013-11-18 15:17:06酉雞
日期:2013-12-06 17:07:16天蝎座
日期:2014-06-11 12:37:07
10 [報(bào)告]
發(fā)表于 2013-11-20 17:46 |只看該作者
@tiankafeiwu你看看還有沒(méi)有啥補(bǔ)充的,我把你的整理一下:

查當(dāng)年的12個(gè)月的:
  1. SELECT COUNT(*),CONCAT(YEAR(attack_date),'-',MONTH(attack_date)) FROM w3a_log_monitor_attack WHERE attack_user='192.168.31.135' GROUP BY CONCAT(YEAR(attack_date),'-',MONTH(attack_date))
復(fù)制代碼
查當(dāng)月的30/31天的:
  1. SELECT COUNT(*),CONCAT(YEAR(attack_date),'-',MONTH(attack_date),'-',DAYOFMONTH(attack_date)) FROM w3a_log_monitor_attack WHERE attack_user='192.168.31.135' and attack_date>DATE_SUB(CURDATE(),INTERVAL DAY(CURDATE())-1 DAY) GROUP BY CONCAT(YEAR(attack_date),'-',MONTH(attack_date),'-',DAYOFMONTH(attack_date))
復(fù)制代碼
查小時(shí)的(24小時(shí)):
  1. SELECT COUNT(*),HOUR(attack_date) FROM w3a_log_monitor_attack WHERE attack_user='192.168.31.135' and attack_date > DATE(NOW()) GROUP BY HOUR(attack_date) ;
復(fù)制代碼
您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國(guó)互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過(guò)ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP