sql left join on中on条件如何 关联 点位1名称 和点位2名称(点位2名称=点位1名称末尾+#1或者#2)
时间: 2024-03-16 12:47:19 浏览: 19
可以使用以下的 ON 条件来关联两个表的点位名称字段:
```
SELECT *
FROM table1
LEFT JOIN table2
ON table1.点位1名称 = table2.点位2名称 OR table1.点位1名称 = LEFT(table2.点位2名称, LENGTH(table2.点位2名称)-2) AND RIGHT(table2.点位2名称, 2) = '#1' OR RIGHT(table2.点位2名称, 2) = '#2';
```
其中,使用了 OR 连接多个条件,第一个条件是点位1名称等于点位2名称,第二个条件是点位1名称等于点位2名称去掉末尾的'#1'或'#2',并且点位2名称末尾是'#1'或'#2'。这样可以保证在关联时,点位1名称和点位2名称末尾是'#1'或'#2'的行才会被返回。LEFT JOIN 表示以 table1 表为主,将 table2 表中符合条件的行关联到 table1 表中,如果 table2 中没有符合条件的行,则 table1 中对应的字段值为 NULL。请根据实际情况修改表名和字段名。
相关问题
sql left join on中on条件如何 关联t1.tag_name=手机1 和 2.tag_name=手机1#1
可以使用以下的 ON 条件来关联两个表的 tag_name 字段:
```
SELECT *
FROM t1
LEFT JOIN t2
ON t1.tag_name = '手机1' AND t2.tag_name = '手机1#1';
```
其中,使用了 AND 连接两个条件,确保 t1 和 t2 的 tag_name 字段分别等于 '手机1' 和 '手机1#1'。这样可以保证在关联时,只有这两个字段相等的行才会被返回。LEFT JOIN 表示以 t1 表为主,将 t2 表中符合条件的行关联到 t1 表中,如果 t2 中没有符合条件的行,则 t1 中对应的字段值为 NULL。
sql left join on中on条件如何 关联t1.tag_name=手机1 和 2.tag_name=手机1#1或者 2.tag_name=手机1#2,条件数据不止一个,但只有末尾不同
可以使用以下的 ON 条件来关联两个表的 tag_name 字段:
```
SELECT *
FROM t1
LEFT JOIN t2
ON t1.tag_name = '手机1' AND (t2.tag_name = '手机1#1' OR t2.tag_name = '手机1#2');
```
其中,使用了 OR 连接多个条件,确保 t1 和 t2 的 tag_name 字段分别等于 '手机1' 和 '手机1#1' 或 '手机1#2'。这样可以保证在关联时,只有这些字段值符合条件的行才会被返回。LEFT JOIN 表示以 t1 表为主,将 t2 表中符合条件的行关联到 t1 表中,如果 t2 中没有符合条件的行,则 t1 中对应的字段值为 NULL。