考慮一個名為「Jobs」的表,其架構如下:
<code>jobId, jobName, Priority</code>
其中「Priority」是1到5之間的整數。
問題陳述:
您需要建立一個查詢,計算「Jobs」表中每個優先權(1到5)的行數。查詢應分別傳回名為「Priority1」到「Priority5」的列,代表這些計數。
解:
為此,請使用以下SQL語句:
<code class="language-sql">SELECT jobId, jobName, SUM(CASE WHEN Priority = 1 THEN 1 ELSE 0 END) AS Priority1, SUM(CASE WHEN Priority = 2 THEN 1 ELSE 0 END) AS Priority2, SUM(CASE WHEN Priority = 3 THEN 1 ELSE 0 END) AS Priority3, SUM(CASE WHEN Priority = 4 THEN 1 ELSE 0 END) AS Priority4, SUM(CASE WHEN Priority = 5 THEN 1 ELSE 0 END) AS Priority5 FROM Jobs GROUP BY jobId, jobName;</code>
解釋:
注意:如果您希望排除“jobId”和“jobName”,只需將它們從SELECT和GROUP BY子句中刪除即可。
以上是如何計算 SQL 中的條件列值:基於優先權的範例?的詳細內容。更多資訊請關注PHP中文網其他相關文章!