如何将字段的一部分与另一个字段中的数据与查询匹配?

时间:2012-07-07 07:43:31

标签: mysql sql

我有2个表table1和table2:

  • table1包含一个名为id的字段,其中包含值1212(示例)。
  • table2有一个名为action的字段,其中包含added 1212updated 1212等数据。

现在检查此查询。

SELECT t1.*, t2.name
FROM table1 t1, table2 t2
WHERE t2.action LIKE 'added t1.id'

我想将第二个表中的name字段添加到仅包含addedupdated不需要)数据的第一个字段中。 这个条件的where子句是什么? 我该如何查询?

2 个答案:

答案 0 :(得分:2)

我是这样做的。

SELECT t1.*, t2.name
FROM table1 t1, table2 t2
WHERE t1.id = (RIGHT(t2.action, 4)) AND t2.action LIKE 'added %'
感谢所有试图帮助我的人。

答案 1 :(得分:1)

最好将action列分为两列,一列用于操作类型,另一列用于操作目标。然后你可以加入这两个表。

SELECT t1.*, t2.name
FROM table1 t1
INNER JOIN table2 t2 ON t1.id = t2.action_target
WHERE t2.action_type = 'added'