共用方式為


摺疊資料列群組 (Visual Database Tools)

可以建立一種查詢結果,其中各結果資料列對應至原始資料的完整資料列群組。摺疊資料列時,請注意下列事項:

  • 您可以排除重複的資料列:有些查詢建立的結果集中會產生許多完全相同的資料列。例如,您可以建立結果集,其中每個資料列都包含城市以及某個城市 (含有一個作者) 所在的州名 - 但如果某個城市含有數個作者,則將產生數個相同的資料列。產生的 SQL 將如下所示:

    SELECT city, state
    FROM authors
    

    上述查詢產生的結果集並不是很有用。如果某個城市含有四個作者,該結果集將包含四個完全一樣的資料列。由於結果列不包含城市和州以外的資料行,因此無法進一步區分這些完全相同的資料行。要避免這種重複的資料列,將其他可區分這些資料列的其他資料行納入結果集。例如,如果您納入作者名稱,則每個資料列都將變成不同 (假設任何一個城市中並沒有兩個命名相似的作者)。產生的 SQL 將如下所示:

    SELECT city, state, fname, minit, lname
    FROM authors
    

    當然上述查詢只可排除這個問題,但無法真正解決該問題。也就是說,雖然該結果集中沒有重複項目,但它再也不是城市的結果集了。若要排除原始結果集中的重複項目,但同時仍然保有每個說明城市的資料列,您可以建立僅傳回不同資料列的查詢。產生的 SQL 將如下所示:

    SELECT DISTINCT city, state
    FROM authors
    

    如需排除重複項目的詳細資訊,請參閱<如何:排除重複的資料列 (Visual Database Tools)>。

  • 您可以計算資料列群組:也就是說,您可以摘要報告資列列群組的資訊。例如,您可以建立結果集,其中每個資料列都含有城市和含有某位作者的城市所在州名,以及該城市所含之作者數目。產生的 SQL 將如下所示:

    SELECT city, state, COUNT(*)
    FROM authors
    GROUP BY city, state
    

    如需計算資料列群組的詳細資訊,請參閱<摘要查詢結果 (Visual Database Tools)>及<排序和群組查詢結果 (Visual Database Tools)>。

  • 您可以使用選擇標準來包含資料列群組:例如,您可以建立結果集,其中每個資料列都包含城市和含有數位作者的城市所在州名,以及該城市所含之作者數目。產生的 SQL 將如下所示:

    SELECT city, state, COUNT(*)
    FROM authors
    GROUP BY city, state
    HAVING COUNT(*) > 1
    

    如需在資料列群組上套用選取準則的詳細資訊,請參閱<如何:指定群組的條件 (Visual Database Tools)>以及<如何:在相同查詢中使用 HAVING 和 WHERE 子句 (Visual Database Tools)>。