![](/img/trans.png)
[英]How to insert multiple rows for comma seperated values in mysqli prepared statement?
[英]How to count the total number of values from various rows, when each row has multiple data seperated by comma?
我有一個只有1列的數據庫表。 表中的每一行/單元格都包含許多以逗號分隔的值。 一些單元格包含NULL(無值)。 我想獲得所有行中的數字總數。 (使用php和mysql)
因此,數據總數應為6,即第1行為2,第2行為1,第4行為3。
值計數將是+1而不是逗號計數。 但是如果列沒有逗號,則它應該為零。 所以這將有效:
SELECT sum(LENGTH('col1') - LENGTH(REPLACE('col1', ',', ''))+1) AS total
FROM table1 WHERE LENGTH('col1')>0
使用php 提取數組中的所有值,並使用explode獲取值的總數。
$i=0;
while(mysqli_num_rows($result) >0)
{
while($row = mysqli_fetch_array($conn, $result))
{
$data_elements = explode(',',$row['data']); // extract all the comma seperated value in array
$i += count($data_elements); //count them all
}
}
echo $i; // these are your total number of values
希望它有幫助:)
這假定逗號表示一個值
SELECT sum(LENGTH('field1') - LENGTH(REPLACE('field1', ',', ''))+1)
AS comma_sum from table1
測試一下,讓我知道它是怎么回事
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.