max*_*com 2 mysql clause inner-query
SELECT `e`.`id`, `e`.`title`, `e`.`description`, `e`.`event_time`,(SELECT GROUP_CONCAT( name SEPARATOR " | " )
FROM `ar_products`
WHERE id IN **(e.products)** AS products FROM events e;
Run Code Online (Sandbox Code Playgroud)
我在事件表中列出了包含列名产品的逗号分隔产品ID.如果我使用值54,33,23 ..它显示正确的值,如产品列表[product1 | product2 | ..].
当我在IN CLAUSE中直接使用列名时,它无法正常工作.
kei*_*eld 20
这听起来像是在寻找FIND_IN_SET http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_find-in-set.将WHERE子句更改为:
WHERE FIND_IN_SET(id, e.products) AS products FROM events e;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3308 次 |
| 最近记录: |