Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 使用like进行子查询_Mysql_Subquery - Fatal编程技术网

Mysql 使用like进行子查询

Mysql 使用like进行子查询,mysql,subquery,Mysql,Subquery,我有以下两张桌子。我如何在表B变量_id与表a组合匹配的情况下进行查询 TableA product_id combination ean 1 952_4038 123456789 2 946_3989 101010101 TableB variant_id desc 4038 text1 3989 text2 谢谢 SELECT a.*, b.* FROM TableA a

我有以下两张桌子。我如何在表B变量_id与表a组合匹配的情况下进行查询

TableA
product_id  combination     ean
1           952_4038        123456789
2           946_3989        101010101

TableB
variant_id  desc
4038        text1
3989        text2 
谢谢

SELECT  a.*, b.*
FROM    TableA a
        INNER JOIN TableB b
            ON a.combination LIKE CONCAT('%', b.variant_ID)
在大型数据库上,此查询速度非常慢。考虑适当地规范表。

我建议的表模式:

  • ProductID(1)
  • IntColumn(952)
  • 组合(4038)
  • Ean(123456789)
表B

  • 组合(4038)
  • DescColumn(text)[不使用保留关键字]
确保链接字段上有索引



后续问题:哪一个表是主表和从属表?

向我们展示您迄今为止的尝试。若你们并没有尝试过任何东西,那个就这么做。组合是固定格式吗?