1
有沒有辦法在使用GROUP BY時聚合sqlite中兩條記錄的BLOB(二進制)。如何連接blob?
已經嘗試過withouth的成功:
1)從SQLite的文檔GROUP_CONCAT功能,但它並不適用於BLOB數據類型的工作,它只返回1,即使2分的BLOB明顯高於大字節。
SELECT id, GROUP_CONCAT(blob_col)
FROM table
GROUP BY id
2)通過Python SQLITE3 「create_aggregate」 功能
import sqlite3
class BlobConcat:
def __init__(self):
self.count = buffer("")
def step(self, value):
print str(value)
self.count += value[:]
def finalize(self):
return self.count
con = sqlite3.connect(dbPath)
con.create_aggregate("BLOB_CONCAT", 1, BlobConcat)
sql = """SELECT id, BLOB_CONCAT(blob_col)
FROM table
GROUP BY id"""
而且只返回1個字節定義自己的SQL函數。
不錯,謝謝! – Hangon