青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

SQL 統計體驗

Posted on 2007-07-13 09:32 小蘇 閱讀(687) 評論(0)  編輯 收藏 引用

今日見小王同志眉頭微皺,心想這兄臺必然遇到難題,遂問其故。果不其然,他在通過日志表統計用戶使用情況時創建試圖屢屢失敗。
我以前也沒有做過類似的SQL,但又想這實現總該不難,于是拿來分析,情況如下:
表1-日志表,表結構如下:
ID,F_LOGIN,MTime,ManageName 這ID是主鍵(ID在我看來都是主鍵,下文不再贅述),F_LOGIN是用戶的登陸名縮寫,MTime是用戶的操作時間,ManageName是用戶操作的模塊名稱
表2-用戶表,結構如下:
ID,F_ORDER,F_LOGIN,F_USERNAME,F_DEPTNAME...,F_ORDER是用戶的順序號,F_LOGIN是用戶的登陸名縮寫,F_USERNAME是用戶的中文名,F_DEPTNAME是用戶所在單位的名稱
表3-部門表,結構如下:
ID,F_DEPTORDER,F_DEPTNAME F_DEPTORDER是部門順序號,F_DEPTNAME是部門名稱。

好了,就是這么三個表,客戶要求根據統計用戶對每個模塊的使用次數,并要求按照部門順序進行排序,并且統計結果排除管理帳號admin:
怎么辦? 看到小王以前的視圖是:

SELECT  用戶表.F_DEPTNAME, COUNT(*)
      AS count, 部門表.F_ORDER
FROM 日志表 INNER JOIN
      用戶表 ON
      日志表.F_login = 用戶表.F_LOGIN INNER JOIN
      部門表 ON
      用戶表.F_DEPTNAME = 部門表.F_DEPATNAME
WHERE (日志表.F_login <> 'admin')
GROUP BY 用戶表.F_DEPTNAME,
      部門表.F_NO
ORDER BY 部門表.F_NO

郁悶,這試圖看起來沒什么問題啊,但是一運行問題就來了:
考,如果部門A的用戶都沒有使用,也就是日志表里沒有記錄,那么視圖里根本就不會顯示該單位,但是很明顯這樣不對,我們需要沒有使用的單位顯示次數為0嘛,
我想辦法不是明擺著的嘛,把"INNER JOIN 部門表"改為"RIGHT JOIN"部門表不就ok了么,好,改變:

SELECT  用戶表.F_DEPTNAME, COUNT(*)
      AS count, 部門表.F_ORDER
FROM 日志表 INNER JOIN
      用戶表 ON
      日志表.F_login = 用戶表.F_LOGIN RIGHT JOIN
      部門表 ON
      用戶表.F_DEPTNAME = 部門表.F_DEPATNAME
WHERE (日志表.F_login <> 'admin')
GROUP BY 用戶表.F_DEPTNAME,
      部門表.F_NO
ORDER BY 部門表.F_NO

運行,又郁悶,怎么還是沒有出現,抓耳撓腮半晌弄不明白,心想反正老子最不怕的就是困難(最怕的是美女放電^_^),我一句一句來,調試、調試,終于發現問題所在:
"WHERE (日志表.F_login <> 'admin')"
當Right join以后,沒有操作的部門會在視圖留下一條記錄,而這條記錄只包含部門表的信息,用戶表和日志表均為NULL,NULL是沒有辦法和'admin'比較的,也就是說NULL <> 'admin' 返回的是false,怎么辦?調整視圖join的次序,如下:
SELECT  用戶表.F_DEPTNAME, COUNT(*)
      AS count, 部門表.F_ORDER
FROM 用戶表 INNER JOIN
      部門表 ON
      用戶表.F_DEPTNAME = 部門表.F_DEPATNAME LEFT JOIN
      日志表 ON
      日志表.F_login = 用戶表.F_LOGIN
WHERE (用戶表.F_login <> 'admin')
GROUP BY 用戶表.F_DEPTNAME,
      部門表.F_NO
ORDER BY 部門表.F_NO

這樣不管怎么變,這所有用戶和部門都是有的,而且admin也過濾的,但是....不對啊,怎么沒有用戶的單位使用次數都很大啊,哦,原來是我用的count(*)
有問題,肯定得用sum函數啦。查查聯機叢書,最后定稿如下:
SELECT  用戶表.F_DEPTNAME,
SUM(CASE WHEN 統計表.F_login IS NULL THEN 0 ELSE 1 END) as count,
部門表.F_ORDER
FROM 用戶表 INNER JOIN
      部門表 ON
      用戶表.F_DEPTNAME = 部門表.F_DEPATNAME LEFT JOIN
      日志表 ON
      日志表.F_login = 用戶表.F_LOGIN
WHERE (用戶表.F_login <> 'admin')
GROUP BY 用戶表.F_DEPTNAME,
      部門表.F_NO
ORDER BY 部門表.F_NO


終于搞定了,萬歲!!不過CASE的使用也分兩種,一種是簡單CASE函數,一種是CASE搜索函數,聯機從書中關于when_expression 和Boolean_expression 寫的很籠統,我的理解when_expression就是一個值,而Boolean_expression是一個判斷,嗯,寫這個破東西也婆婆媽媽的寫了半個小時,到此收筆。

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲国产精品尤物yw在线观看| 亚洲二区在线视频| 欧美在线影院| 亚洲欧美另类中文字幕| 欧美精品日韩综合在线| 一区二区三区不卡视频在线观看 | 国产欧美91| 性亚洲最疯狂xxxx高清| 久久久激情视频| 一本色道**综合亚洲精品蜜桃冫 | 国产日韩欧美电影在线观看| 久久久亚洲高清| 欧美日韩中文在线观看| 久久综合给合| 欧美精品网站| 欧美sm重口味系列视频在线观看| 亚洲黄色av一区| 午夜亚洲视频| 一二三四社区欧美黄| 欧美综合第一页| 亚洲主播在线观看| 欧美激情四色 | 国产精品99免费看| 欧美成黄导航| 黄色资源网久久资源365| 亚洲视频综合在线| 一区二区激情小说| 欧美大片一区| 亚洲美女免费视频| 亚洲无线视频| 欧美日韩精品免费观看| 亚洲片区在线| 亚洲精品无人区| 麻豆精品一区二区综合av| 欧美成人国产va精品日本一级| 9i看片成人免费高清| 欧美激情精品久久久久久蜜臀| 美日韩免费视频| 亚洲日韩中文字幕在线播放| 另类图片综合电影| 亚洲黄色在线看| 亚洲精品综合久久中文字幕| 欧美日本一区| 欧美一二三区在线观看| 卡通动漫国产精品| 在线国产日韩| 久久久亚洲高清| 在线免费观看一区二区三区| 欧美专区福利在线| 亚洲高清在线视频| 国产精品福利在线| 亚洲精品永久免费精品| 亚洲午夜精品17c| 国产一区二区久久久| 男女精品网站| 亚洲午夜av电影| 噜噜噜久久亚洲精品国产品小说| 亚洲乱码国产乱码精品精可以看| 亚洲免费观看高清在线观看 | 亚洲精品免费一区二区三区| 亚洲一区精品在线| 亚洲人成网站在线播| 国产精品推荐精品| 欧美—级a级欧美特级ar全黄| 亚洲欧美日韩另类精品一区二区三区| 欧美黄色小视频| 国产精品青草综合久久久久99| 在线综合欧美| 亚洲国产一区二区视频| 久久亚洲精品视频| 久久福利资源站| 欧美有码在线观看视频| 亚洲综合日本| 午夜精彩视频在线观看不卡| 亚洲激情网站| 亚洲理伦在线| 99riav国产精品| 中文在线一区| 中文一区二区| 国产自产v一区二区三区c| 在线亚洲成人| 亚洲视频在线一区| 亚洲天堂第二页| 亚洲伊人伊色伊影伊综合网| 中文国产成人精品| 欧美一区1区三区3区公司| 亚洲午夜激情在线| 欧美一级日韩一级| 欧美大胆人体视频| 中文在线一区| 毛片精品免费在线观看| 国产精品国产自产拍高清av王其| 欧美日韩精品一区二区在线播放 | 一二三区精品| 亚洲欧美经典视频| 久久久免费av| 亚洲午夜电影在线观看| 久久精品国产久精国产爱| 欧美日韩国产在线| 精品成人在线视频| 亚洲免费在线看| 亚洲人午夜精品免费| 久久精品亚洲| 国产亚洲精品综合一区91| 亚洲美女视频在线观看| 久久影音先锋| 久久激情视频| 国产亚洲精品bt天堂精选| 亚洲在线不卡| 亚洲午夜av在线| 欧美性色综合| 亚洲欧美一级二级三级| 最新国产乱人伦偷精品免费网站| 久久精品日韩欧美| 伊人蜜桃色噜噜激情综合| 久久精品99国产精品| 欧美一区二区三区四区在线| 欧美天堂亚洲电影院在线播放| 亚洲图片欧美午夜| 亚洲视频免费看| 国产精品日本精品| 久久精品理论片| 久久精品日韩| 欧美日本在线| 国产精品日韩欧美一区二区| 国产一级久久| 久久国产精品久久久久久久久久| 久久精品一区| 欧美日韩国产成人| 在线视频观看日韩| 亚洲综合精品四区| 欧美激情一区在线| 香蕉乱码成人久久天堂爱免费| 欧美成人激情在线| 国产欧美精品久久| 亚洲免费一在线| 亚洲激情网址| 久久中文字幕一区| 国产乱肥老妇国产一区二| 91久久综合| 欧美福利电影在线观看| 亚洲欧美清纯在线制服| 欧美日韩综合| 99精品免费视频| 最新成人av在线| 欧美精品www| 亚洲每日更新| 亚洲精品午夜精品| 欧美日韩性生活视频| 亚洲精选成人| 99精品热6080yy久久| 欧美日本高清一区| 99这里只有精品| 亚洲一区二区三| 国产亚洲精品7777| 欧美黑人多人双交| 欧美韩日一区| 亚洲综合色噜噜狠狠| 欧美在线观看视频| 在线观看亚洲视频| 亚洲三级视频在线观看| 欧美日韩在线影院| 久久精品视频免费播放| 久久er精品视频| 一二三四社区欧美黄| 欧美一区免费| 亚洲伊人伊色伊影伊综合网| 亚洲精品久久久久中文字幕欢迎你 | 亚洲精品小视频| 99re66热这里只有精品3直播 | 欧美 日韩 国产一区二区在线视频 | 麻豆成人91精品二区三区| 亚洲二区在线| 一本色道久久99精品综合| 国语对白精品一区二区| 欧美成人精品在线播放| 欧美日韩在线观看视频| 久久综合九色综合网站| 欧美人成在线| 久久综合久久美利坚合众国| 欧美高清在线播放| 久久精品在线播放| 欧美午夜一区| 亚洲国产欧美一区二区三区丁香婷| 国产精品国码视频| 一区二区三区av| 日韩午夜一区| 在线日韩成人| 久久国产视频网站| 翔田千里一区二区| 欧美视频成人| 亚洲午夜免费视频| 欧美一区二区视频免费观看| 国产精品久久久999| 亚洲素人在线| 欧美综合国产精品久久丁香| 国产精品视频xxxx| 久久国产精品99国产精| 免费亚洲电影| 亚洲私拍自拍|