首頁 > 資料庫 > mysql教程 > SQL 如何從非結構化文字資料計算成績百分比分佈?

SQL 如何從非結構化文字資料計算成績百分比分佈?

Patricia Arquette
發布: 2025-01-17 04:01:09
原創
457 人瀏覽過

How Can SQL Calculate Grade Percentage Distributions from Unstructured Text Data?

使用 SQL 從非結構化資料高效計算成績百分比

在計算成績百分比分佈時,將成績作為自由文字儲存在資料庫中會帶來挑戰。本文提供了 SQL 解決方案來計算所有成績的這些百分比,即使沒有預先定義的成績值也是如此。

用於百分比計算的 SQL 查詢

此 SQL 查詢利用 over() 函數跨唯一等級值進行有效的百分比計算:

<code class="language-sql">SELECT Grade, COUNT(*) * 100.0 / SUM(COUNT(*)) OVER ()
FROM MyTable
GROUP BY Grade;</code>
登入後複製

over() 函數計算整個表格的總行數,無需指定所有可能的成績即可進行百分比計算。

替代 SQL 查詢(適用於沒有 over() 功能的資料庫)

對於缺少 over() 函數的資料庫,此替代查詢使用子查詢:

<code class="language-sql">SELECT Grade, COUNT(*) * 100.0 / (SELECT COUNT(*) FROM MyTable)
FROM MyTable
GROUP BY Grade;</code>
登入後複製

此方法使用子查詢來取得總行數,然後計算百分比。

重要提示:當成績資料儲存為單字元值(例如「A」、「B」、「C」)時,這些解決方案可以準確計算百分比。 非結構化文字中更複雜的成績格式需要在應用這些 SQL 查詢之前進行預處理以提取成績值。

以上是SQL 如何從非結構化文字資料計算成績百分比分佈?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板