每一个人 它与MYSQL查询有关... 我有两张桌子...... 表A就像
|ID | Field 1| Field 2 |
------------------------
| 01 | ASD | SDF |
------------------------
| 02 | ghg | OOi |
------------------------
B就像
------------------------
|ID | Field A | Field B |
-------------------------
| 1 | XYZ | AB01 |
| 2 | XYZ | AB02 |
-------------------------
现在表B中的字段B值 - AB01 这里01是表A的ID值。
现在我的问题是如何在A和B表中使用内部连接
像
来自B.
内连接表A对??? [On Clause中会有什么...... ??]
答案 0 :(得分:1)
假设ID是01
和99
之间的字符串:
select *
from TableA a
join TableB b
on a.id = substring(b.FieldB, 3, 2)
答案 1 :(得分:1)
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
答案 2 :(得分:0)
//喜欢这个
SELECT * FROM TableNAme INNER JOIN SecondTableName ON TableName.ID=SecondTableName.ID;
答案 3 :(得分:0)
你可以使用SUBSTRING函数,如:
SELECT * FROM TableA a
INNER JOIN TableB b ON a.id = SUBSTRING(b.FieldB, 3, 2)
这将返回所有记录。
mysql中的SUBSTRING有三个参数。
像:
SUBSTRING( string, start_position, [ length ] )
或
SUBSTRING( string FROM start_position [ FOR length ] )