[英]multiple MySQL rows into one field
我在stackoverflow嘗試了類似問題的解決方案,但沒有成功。 這是mysql查詢:
$sql= "SET group_concat_max_len = 2048";
$sql = "select p.id,p.name,p.logo,p.short_description, GROUP_CONCAT(c.category_name SEPARATOR ', ') from eshop p, eshop_cat c GROUP BY p.id";
我無法理解查詢出了什么問題,但是c.category結果為空。 如果我在沒有組concat的情況下執行此操作並使用內部連接,則我會正確接收所有數據。 但是對於每個產品的每個類別,我都針對同一產品有多個行。 (例如,如果一個產品有3個類別,那么它將顯示3次該產品。)我只想為每個產品設置1行,並且類別之間用逗號分隔,請您能幫我嗎?
這樣嘗試
$sql= "SET group_concat_max_len = 2048";
$sql = "select p.id,p.name,p.logo,p.short_description, GROUP_CONCAT(c.category_name SEPARATOR ', ') as category_names from eshop p join eshop_cat c on
p.id=c.id GROUP BY p.id";
只需將您的p.id=c.id
,它將對您p.id=c.id
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.