Typo3 DatabaseQueryProcessor 一对多关系
Typo3 DatabaseQueryProcessor one-to-many relation
我想在 DatabaseQueryProcessor 中加入一个具有一对多关系的 table。 table1.images
包含来自 table2 的图像 uid 的逗号分隔列表。例如1,2,3
。在此示例中,我希望得到所有 3 张图像。
我试过了:
dataProcessing {
10 = TYPO3\CMS\Frontend\DataProcessing\DatabaseQueryProcessor
10 {
table = table1
join = table2 on table1.images in (table2.uid)
as = someValue
}
}
但这只给我第一张图片“1”,而不是其他两张图片。
如何在DatabaseQueryProcessor中体现一对多关系?
我想通了:
join = table2 ON table1.images like concat('%', table2.uid , '%')
和
join = table2 ON find_in_set(table2.uid, table1.images)
有效
您正在尝试检查列表和单个值之间的相等性(“=”)。我想知道您是否得到了有效结果而不是 exception/error...
查看列表的 SQL 函数:
IN():
join = table2 on table2.uid IN(table1.images)
我想在 DatabaseQueryProcessor 中加入一个具有一对多关系的 table。 table1.images
包含来自 table2 的图像 uid 的逗号分隔列表。例如1,2,3
。在此示例中,我希望得到所有 3 张图像。
我试过了:
dataProcessing {
10 = TYPO3\CMS\Frontend\DataProcessing\DatabaseQueryProcessor
10 {
table = table1
join = table2 on table1.images in (table2.uid)
as = someValue
}
}
但这只给我第一张图片“1”,而不是其他两张图片。
如何在DatabaseQueryProcessor中体现一对多关系?
我想通了:
join = table2 ON table1.images like concat('%', table2.uid , '%')
和
join = table2 ON find_in_set(table2.uid, table1.images)
有效
您正在尝试检查列表和单个值之间的相等性(“=”)。我想知道您是否得到了有效结果而不是 exception/error...
查看列表的 SQL 函数:
IN():
join = table2 on table2.uid IN(table1.images)