sql
假設有一table如下圖所示,
如果想要抓取table中第11~20筆的資料,靠fUserId是沒辦法的(跳號了),
而MS SQL又沒提供像FoxPro的recno() 這種抓取記錄筆數的function,這時得靠
通用資料表運算式 (CTE)了,
用法如下:

忙裡偷閒 發表在 痞客邦 留言(1) 人氣()

以往在撰寫報表程式時,時常需要大量的運用子查詢及聚合函數(SUM、AYG、COUNT),SQL寫的又臭又長,
例如計算總訂單量,會這樣寫:
SELECT a.SalesOrderID, a.ProductID, a.OrderQty
    ,(select sum(b.OrderQty) FROM Sales.SalesOrderDetail b
   
where a.SalesOrderID=b.SalesOrderID GROUP BY b.SalesOrderID) As 'Total'
   
,(select avg(b.OrderQty) FROM Sales.SalesOrderDetail b
   
where a.SalesOrderID=b.SalesOrderID GROUP BY b.SalesOrderID) AS 'Avg'
   
,(select COUNT(b.OrderQty) FROM Sales.SalesOrderDetail b
   
where a.SalesOrderID=b.SalesOrderID GROUP BY b.SalesOrderID) AS 'Count'
   
,(select min(b.OrderQty) FROM Sales.SalesOrderDetail b
   
where a.SalesOrderID=b.SalesOrderID GROUP BY b.SalesOrderID) AS 'Min'
FROM Sales.SalesOrderDetail a  FROM a.SalesOrderID in(43659,43664)
GROUP BY a.SalesOrderID, a.ProductID, a.OrderQty

無意中在微軟的技術網站裡發現這篇文章上述範例用OVER子句去寫,更簡潔了,並且能提高效率。
以上範例如用OVER子句來寫會是這樣 :

忙裡偷閒 發表在 痞客邦 留言(1) 人氣()

有幸拜讀了自製 jQuery Plugin – Part 1一文,讓初出茅廬的我,也寫出了一些小型的plugin。
但對於plugin的樣板還是有些疑惑。
以下是plugin的樣板:
jQuery.fn.mytoolbox = function() {
    return this.each(function() {
    });
};

忙裡偷閒 發表在 痞客邦 留言(0) 人氣()

看了document的說明,還是一頭霧水,說明如下:
回到最近的一個"破壞性"操作之前。即,將匹配的元素列表變為前一次的狀態。
如果之前沒有破壞性操作,則返回一個空集。所謂的"破壞性"就是指任何改變所匹配的jQuery元素的操作。這包括在 Traversing 中任何返回一個jQuery物件的函數--'add', 'andSelf', 'children', 'filter', 'find', 'map', 'next', 'nextAll', 'not', 'parent', 'parents', 'prev', 'prevAll', 'siblings' and 'slice'--再加上 Manipulation 中的 'clone'。

索性自己寫段程式try了一下,就懂它的意思了。直接看範例最容易懂,您可以把以下的code貼到w3cschools的線上測試。
以下的code中,用next()去取得div2的object並修改了css的樣式,然後用end()去取得一個JQuery object放入變數v中,再show出這個object的text()。
果然!變數中放的是div1的object。好一記回馬槍呀!如此我再繼續改寫以下的程式:


(原始:)
var
v = $('#div1').next().css('background-color','red').end();
alert($(v).text());
(修改後:)
var
v = $('#div1').next().css('background-color','red').end().css('background-color','blue');
瞧!這就把原本的div1也修改為藍色的了。為何要用end()來抓取原來的jQuery object呢?再下一行$('#div1').css('background-color','blue')去改不就好了?
我想是因為效率問題吧。因為DOM文件是以TREE的方式展示其元素的,當再次的宣告了一次$('#div1'),意味著又得重新再TREE中搜尋了,如此豈不是很沒效率。這是我的猜測,
如有錯誤歡迎指正。

忙裡偷閒 發表在 痞客邦 留言(0) 人氣()

<html>
<head>

忙裡偷閒 發表在 痞客邦 留言(0) 人氣()

<%@ Page Title="" Language="VB" MasterPageFile="~/MasterPage.master" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>

忙裡偷閒 發表在 痞客邦 留言(0) 人氣()

« 1 2 3 4
Blog Stats
⚠️

成人內容提醒

本部落格內容僅限年滿十八歲者瀏覽。
若您未滿十八歲,請立即離開。

已滿十八歲者,亦請勿將內容提供給未成年人士。