mysql - 如何左连接将两个组合值烘焙到单个 varchar 字段中的字段?

标签 mysql

foos.bar_slash_otherstuff 是一个 varchar,如下所示:

bar/otherstuff

bars.bar 是一个 varchar,如下所示:

bar

现在我需要加入这疯狂的行列。而且我不允许为此使用临时表...

   select 
        `foos`.`bar_slash_otherstuff`,
        `bars`.`bar`
    from 
        `foos`
    left join 
        `bars` 
         on `bars`.`bar` = LEFT(`foos`.`bar_slash_otherstuff`, LOCATE('/', `foos`.`bar_slash_otherstuff`) - 1)

这是可行的,但是这是实现这一目标的好方法还是有更优化的方法?

最佳答案

您可以创建一个两步流程,其中第一步是拆分 bar_slash_otherstuff 字段的查询,第二步执行上述联接。

关于mysql - 如何左连接将两个组合值烘焙到单个 varchar 字段中的字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33394295/

相关文章:

php - 数据未发布到数据库中

php - 无法通过引用传递参数 - MySQLi

php - 如何使用 PHP/MYSQL 在评论中最好地创建中断?

PHP + MySQL - 有什么替代方法来处理(小)时间序列?

javascript - 来自 mysql 数据库的变量值

php - 使用 MAMP 进行文件路由

mysql - 如何使用 Rails 5 迁移在 MySQL 中添加 JSON 列

javascript - 使用正则表达式搜索单词

mysql - 使用 UNION 处理重复结果

mysql - 如何在没有 Web 服务的情况下将 Xamarin.Forms 应用程序连接到 mysql 数据库