我有一個表,這個樣子 MySQL的搜索字符每
,我想查詢表中尋找該GROUP_CONCAT(product_id SEPARATOR ', ')
領域有7
和10
。
Like
語句不工作對我來說很好,因爲它只是表示第一排,尚未出現在第三行,即使它有7
和10
,但與它之間8
分開..
是有什麼WHERE STATEMENT
,我可以用這個?
我有一個表,這個樣子 MySQL的搜索字符每
,我想查詢表中尋找該GROUP_CONCAT(product_id SEPARATOR ', ')
領域有7
和10
。
Like
語句不工作對我來說很好,因爲它只是表示第一排,尚未出現在第三行,即使它有7
和10
,但與它之間8
分開..
是有什麼WHERE STATEMENT
,我可以用這個?
爲什麼要困擾?
試試這個
SELECT * from table where field REGEXP 'abdan|copin|sher';
你不想where
條款,你想有一個having
條款:
having sum(product_id = 7) > 0 and
sum(product_id = 10) > 0
它給了我一個空集...這是我的SQL,我與你'having' sugestion運行'SELECT * FROM(SELECT purchase_order_id,GROUP_CONCAT(產品分離器 '')作爲product_ordered from ufi_purchaseorderdetail GROUP BY purchase_order_id)作爲具有sum(product_ordered = 7)> 0和sum(product_ordered = 10)> 0;' –
是否意味着'product_ordered'?因爲我試圖搜索product_ordered字段(請看第二張圖) –
您可以使用像'7%10'
這種情況。但是,如果字符串序列是10, 8, 7
,則必須在查詢中包含'10%7'
。我以前遇到類似的情況,但我沒有按照你的方式存儲數據。
這是一個ManyToMany
關聯,因此您可以將group_contact
存儲在另一個表group(id int primary key, group int not null)
中。然後使用第三個表middle_table(order_id int, group_id int)
來映射它們。希望爲您提供幫助。
呃好吧,'REGEXP'代碼適用於我。謝謝 –
「abdan | copin | sher''是什麼意思? –
這是你想找到的名字的對象 –