显示相关记录vb.net mysql
我有一些奇怪的搜索条件。首先让我澄清一下 我有一张这样的桌子 acct_no | name | connected_acct ---------------------------------- 1 | name_1 | 5,6,7 2 | name_1 | 11,12,13 --------------------------------- 账号|名称|连接账户 ---------------------------------- 1 |名称| 1 | 5,6,7 2 |名称| 1 | 11,12,13 --------------------------------- 1) 这里的“name_1”是“5,6,7”所有账户的持有人 我想要的是,如果我搜索“acct_no”1,那么其他连接帐户的所有详细信息也应该显示在grind或其他任何内容中 谢谢 --编辑-- (1) 我提出了这个问题,但我不认为它能解决我的问题 (2) 我忘了提到数据库将以UTF格式(一些本地语言!)存储一些字段。使用函数: 试试这个:显示相关记录vb.net mysql,mysql,sql,select,self-join,find-in-set,Mysql,Sql,Select,Self Join,Find In Set,我有一些奇怪的搜索条件。首先让我澄清一下 我有一张这样的桌子 acct_no | name | connected_acct ---------------------------------- 1 | name_1 | 5,6,7 2 | name_1 | 11,12,13 --------------------------------- 账号|名称|连接账户 ----------------------------------
SELECT b.acct_no, b.name
FROM accounts a
INNER JOIN accounts b ON FIND_IN_SET(b.acct_no, a.connected_acct)
WHERE a.acct_no = 1;
规范化数据库是一种选择吗?是的,任何解决方案都可以实现。实际上,它是一个完成了一半的项目,我需要重新设计它。因此,我可以在必要时进行更改。:)然后我强烈建议规范化您的表。您可以为
[acct\u no,connected\u acct]
创建一个n-to-m连接表-这将使您的生活在未来变得更加轻松。谢谢,Mureinik,我也在考虑为连接帐户创建一个新表。谢谢Saransh,我正在尝试您和Mureinik提供的提示。我想我现在可以解决它了。无论何时完成,我都会发布示例代码和详细的解决方案。:)