關於 SQL 中 COUNT 的小問題。

發布 科技 2024-05-25
15個回答
  1. 匿名使用者2024-02-11

    select sum(case when columnname=1 then 1 else 0 end) as '1 的數量',sum(case when columnname=0 then 1 else 0 end) as '0',cast(sum(case when columnname=1 then 1 else 0 end)/count(*)100 as varchar)+'%' as '1 百分比',cast(sum(case when columnname=0 then 1 else 0 end)/count(*)100 as varchar)+'%' as '0' from tablename

  2. 匿名使用者2024-02-10

    表資料項資料

    select count(*)count(*)/(select count(*)from table) from table group by data

    不行嗎?? 我沒試過。

  3. 匿名使用者2024-02-09

    select sum(zero) as zero,sum(one) as one,(sum(zero)+sum(one)) as he from(select (case when id=0 then count(*)else 0 end) as zero, (case when id=1 then count(*)else 0 end) as one from animal group by id)

    這將找出 0、1 和總和。 剩下的很簡單,相信你都能應付。

    數字和總和已經找到,比例不是一件簡單的事情。

    select sum(zero) as zero,sum(one) as one,(sum(zero)+sum(one)) as he ,sum(zero)/(sum(zero)+sum(one)) sum(one)/(sum(zero)+sum(one)) from(select (case when id=0 then count(*)else 0 end) as zero, (case when id=1 then count(*)else 0 end) as one from animal group by id)

    因此,數字為0,數字為1,總和,比例為0,比例為1。 一切都在那裡,你選擇。

  4. 匿名使用者2024-02-08

    是否必須使用 SQL 語句?

    我不知道我用來宣告變數的方法是否正常。

    declare @count1 float,@count2 float

    選擇 @count1=count(*)從 Column=0 的使用者中

    select @count2=count(*)from users where column=1

    select @count1,cast(cast((@count1/count(*)100) as decimal(10,2)) as varchar)+'%',count2,cast(cast((@count2/count(*)100) as decimal(10,2)) as varchar)+'%'從表中。

  5. 匿名使用者2024-02-07

    選擇 sum(case when id=0 then 1 else 0 end) as case as case of 0 numbers, sum(case when id= 1 then 1 else 0 ) as case of 1 number, count(*)as all green numbers, sum(case when id=0 then 1 else 0 end ) count(*)100 ||'%'作為百分比 0 sum(case when id= 1 then 1 else 0 ) count(*)。'%'比例 1 來自 biao

  6. 匿名使用者2024-02-06

    選擇 sum(case column when 0 then 1 else 0 end) as count0,sum(case column when 1 then 1 else 0 end) as count1,sum(case column when 0 then 1 else 0 end) count(*)as rate0,sum(case column when 1 then 1 else 0 end) count(*)as rate1 from table.

    不處理百分比格式。

  7. 匿名使用者2024-02-05

    SQL 語句中的 count 和 count 之間沒有區別。 指示與指定條件匹配的行數。

    SQL count() 語法:

    1. SQL Count(Column Name) 函式返回指定列的值個數(null 不計算),例如:從表名中選擇 count(column name)。

    2. SQL Count(*) 函式返回表中的記錄數,例如:select count(*)from table name。

    3. SQL Count(distinct column name) 函式返回指定列的不同值的個數,例如:select count(distinct column name) from table name.

  8. 匿名使用者2024-02-04

    count(0) 和 count(1) 與 SQL 語句的用法沒有實質性區別。

    SQL 語句中的 count 函式是查詢返回的記錄數。

    count(expr), count(*) 列中的值數(如果將列名指定為 expr)或表中的行數或組中的行數(如果指定 *) count(expr) 忽略 null 值,但 count(*) 將它們包含在計數中。

    任何實數都可以在 SQL 語句中 count 函式的括號中填寫,可以正常使用。

    實數在以下計數函式的括號中使用

    private sub form_load()= "provider=;persist security info=false;data source=jwl_dbf" '計數(備件**)為 SJ

    select count( from jwl_jiec"

    zsl =set = adodc3

    end sub

    操作介面如下:

  9. 匿名使用者2024-02-03

    首先,含義不同。

    count(1) 計算滿足條件的所有欄位的數量,包括 null 值。 count(0) 將返回 ** 中所有現有行的總數,包括具有 null 值的行,而 count(column name) 將返回 ** 中除 null 之外的所有行的總數(具有預設值的列也被計算在內),非重複列名,結果將是刪除 null 值和重複資料後的結果。

    二是作用不同。

    最主要的是 count(1) 對應的資料字段。

    如果 count(1) 是乙個多索引 id,那麼 count(1) 一定是快速的。 但差異非常小。 這是因為 count(*) 會自動優化要指定的字段。

    所以沒有必要計數(?使用 count(*) sql 將幫助您進行優化。

    第三,使用效果不同。

    當 abc 為空時,第二個不計入計數,第乙個無條件計入計數,與一列資料成正比。

    欄位名稱為 abcab

    如果為 null,則第乙個查詢有 3 個條目,第二個查詢結果為 2 個條目。

  10. 匿名使用者2024-02-02

    區別在於:

    當 abc 為空時,第二個被計入計數,第乙個被無條件地計數。

    資料的比例列。

    欄位名稱為 abcab

    null在這種情況下,第乙個查詢是3,第二個查詢的結果就是2,你可以自己拿幾條資料來測試一下,結果就知道了。

  11. 匿名使用者2024-02-01

    這沒什麼區別。 count 是總結的意思。 裡面寫著列表名稱。

    彙總此列中的行數。 例如,如果寫 0 或 1,則可以將其視為從表中選擇 1,並使用 1 作為列名來彙總行數。

  12. 匿名使用者2024-01-31

    count(1) 或 count(0) 速度更快,中間有乙個常數,所以沒有區別。

    count(*) 這是最慢的,因為它必須找出列名由 * 表示的內容。

  13. 匿名使用者2024-01-30

    您好,題主,從語句的角度來看,使用count語句沒有錯,但是從錯誤報告來看,應該是題主在賣家建表時使用了字元型別,而不是對應的數字型別。 這是因為在執行語句時,存在數值比較,即數值型別與數值型別進行比較。 所以當銷售價格是 varchar 型別時,你認為 1000<=1000,但實際上它就像乙個裂縫"1000"<1000,舉個不恰當的例子,就好比175的身高和180的體重是一樣的,不能和隱藏的變化相提並論。

    因此,主體應首先將銷售價格欄位的型別轉換為數值型別,例如 int

    當題主將銷售價格型別轉換為數字型別時,他會發現語句的執行很好,但結果與預期不同,解決方法是刪除所有三個大小寫,當所有其他 0 時.解釋原因:

    我們來看看官網上對 count() 函式的描述

    count(x) 函式的作用是計算 x 為非 null 值時的條目數,題主現在這樣寫,條件為 true,顯示產品名稱,非渣關閉顯示為 0,null 不等於 0 或產品名稱,所以三個計數的最終結果為 8 (遍歷整個表,然後得到乙個臨時表,count() 統計臨時表中的非 null 條目數

    low_price |

    T恤 |沖床 |

    前叉 |砧板 |

    原子筆 |去掉 else 0 部分後,滿足條件的部分顯示為產品名稱,不顯示的部分預設為 null,然後根據 count() 函式的特點,可以得到正確的結果:

    low_price |

    T恤 |沖床 |

    null |

    null |

    null |

    前叉 |砧板 |

    原子筆 |正確的語句如下圖所示:

    這個問題可以使用 sumif 進行處理,詳見截圖

    希望能對題主有所幫助,歡迎提問。

  14. 匿名使用者2024-01-29

    乙個選擇中不能有複數計數,這個語法結構是錯誤的,你可以把三個計數寫成三個表,然後橙笑拿出相應的值!

  15. 匿名使用者2024-01-28

    計數函式計算的記錄數與使用者的組類別字段相關。 sql1:select count(*)from tablename ;說明:上面的語句是查詢表名的總片數。

    sql2:select count(name) from tablename group by name;解釋:

相關回答
5個回答2024-05-25

由於您不知道 t hy cus 安裝表中的主鍵,因此使用 exists 更安全。 >>>More

7個回答2024-05-25

你好! 請參考:

我們在知識中提出的問題和問題無法刪除,也無法刪除它們,因為我們沒有此功能。 >>>More

4個回答2024-05-25

一般指索引。 你不必這樣做。

7個回答2024-05-25

update 表 1 設定字段 1='新價值'其中時間字段 1>='開始時間'和時間字段 1<='結束時間'

10個回答2024-05-25

聯接聯接將字段記錄合併到兩個表中,包括三種型別: >>>More