[英]How To Join Two Tables Having Some Values Same in the Column
Every One It's Related To MYSQL Query... I have Two Tables ... Table A is like 每一个都与MYSQL查询有关...我有两个表...表A就像
|ID | Field 1| Field 2 |
------------------------
| 01 | ASD | SDF |
------------------------
| 02 | ghg | OOi |
------------------------
B is Like B就像
------------------------
|ID | Field A | Field B |
-------------------------
| 1 | XYZ | AB01 |
| 2 | XYZ | AB02 |
-------------------------
Now in Field B In Table B Value - AB01 here 01 is the Value of ID Of Table A . 现在在表B的字段B中,值-AB01在这里01是表A的ID的值。
Now My Question is that How to use inner Join in Both A AND B Table 现在我的问题是,如何在A和B表中同时使用内部联接
Like From B inner Join TableA On ??? 像从B内部加入TableA一样??? [What will be in On Clause ...??]
[在子句中会有什么... ??]
Assuming ID is a string between 01
and 99
: 假设ID是介于
01
和99
之间的字符串:
select *
from TableA a
join TableB b
on a.id = substring(b.FieldB, 3, 2)
Try this
DECLARE @RESULT TABLE
(
ID INT,
Field_1 varchar(10),
Field_2 varchar(10)
)
INSERT @RESULT VALUES
(01, 'ASD','SDF')
,(02, 'ghg','OOi')
DECLARE @RESULT1 TABLE
(
ID INT,
Field_a varchar(10),
Field_b varchar(10)
)
INSERT @RESULT1 VALUES
(01, 'xyz','ab01')
,(02, 'xyz','ab02')
select * from @RESULT r1 inner join @RESULT1 r2
on right(r2.Field_b,2)=r1.id
// 像这样
SELECT * FROM TableNAme INNER JOIN SecondTableName ON TableName.ID=SecondTableName.ID;
Well you can use SUBSTRING function like: 好吧,您可以使用SUBSTRING函数,例如:
SELECT * FROM TableA a
INNER JOIN TableB b ON a.id = SUBSTRING(b.FieldB, 3, 2)
This will return you all records. 这将返回所有记录。
SUBSTRING in mysql have three params. 在mysql中SUBSTRING具有三个参数。
Like: 喜欢:
SUBSTRING( string, start_position, [ length ] )
or 要么
SUBSTRING( string FROM start_position [ FOR length ] )
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.