gpt4 book ai didi

MySQL 按 id 字段上的 x 个字符分组

转载 作者:行者123 更新时间:2023-11-29 05:40:35 25 4
gpt4 key购买 nike

我有一个状态很差的客户端数据库,但我必须使用它。我们有一组产品 ID,每个 ID 都由产品的属性组成。我想要做的是选择那些匹配前 4 或 5 个字符的 ID,并将它们作为所选产品的变体放在下拉框中。

我试过“按 subtr(0,6) 分组”,但这似乎只返回组中的第一个匹配项。我需要的是有单独的查询,只返回具有匹配的前 x 个字符的所有单独的行。

因此,例如,我希望查询将返回:12345xx12345yy12345zz

然后另一个将返回:56789xx56789yy56789zz

以下查询将只返回:

12345xx

然后

例如56789yy

select tbl_item.Description, tbl_item.`Description 2`, tbl_item.`Inventory Posting Group`, tbl_item.No_, tbl_item.`Web Description`, tbl_item.`Web Headers`, tbl_item.`Unit Price`, tbl_item.`Sales (Qty_)`, tbl_item.`Product Group Code`
from tbl_item
where tbl_item.`Product Group Code` = ':shopprodid' and tbl_item.`Vendor No_` = '$vendor_no'
group by substr(0,6)

最佳答案

解决方案是将 substr 和 LIKE 放在 WHERE 子句中(无需对任何内容进行分组)。顺便说一句,在 MySql 中,子字符串从索引 1 开始,而不是 0。

select *
from tbl_item
where substr(tbl_item.`Product Group Code`, 1, 6) LIKE ':shopprodid%'

关于MySQL 按 id 字段上的 x 个字符分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7091018/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com