Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL查询-选择包含不同表中数据的行_Sql_Sql Server_Sql Server 2008_Tsql - Fatal编程技术网

SQL查询-选择包含不同表中数据的行

SQL查询-选择包含不同表中数据的行,sql,sql-server,sql-server-2008,tsql,Sql,Sql Server,Sql Server 2008,Tsql,我有两张桌子。e、 g: table1: |Alias1|Alias2 |Alias3| --------------------- |qaz | **abc**def |wsx | |edc |rfv |tgb | table2: |Alias1 |Alias2 |Alias3| --------------------- |**abc** | qwe |rty | |zxc |zxc |vbn |

我有两张桌子。e、 g:

table1:

|Alias1|Alias2       |Alias3|
---------------------
|qaz   | **abc**def  |wsx   |
|edc   |rfv          |tgb   |

table2:

|Alias1    |Alias2 |Alias3|
---------------------
|**abc**   | qwe   |rty   |
|zxc       |zxc    |vbn   |
我只想显示
table1
中的行,其中
table2
中的
alias1
包含在
table1
中的
Alias2
中。请尝试:

select * from table1 t1
  where exists (  select 1 from table2 t2  
                       where t2.Alias1 = t1.Alias2)
尝试:

尝试:

尝试:


我希望下面的问题能有所帮助

CREATE TABLE #Table1 (
                        Alias1 VARCHAR(35),
                        Alias2 VARCHAR(35),
                        Alias3 VARCHAR(35)
                        )
Go

CREATE TABLE #Table2 (
                        Alias1 VARCHAR(35),
                        Alias2 VARCHAR(35),
                        Alias3 VARCHAR(35)
                        )
GO
INSERT INTO #Table1(Alias1,Alias2,Alias3)
SELECT 'qaz','**abc**','wsx'
UNION ALL
SELECT 'edc','rfv','tgb'
GO
INSERT INTO #Table2(Alias1,Alias2,Alias3)
SELECT '**abc**','qwe','rty'
UNION ALL
SELECT 'zxc','zxxc','vbn'
GO
SELECT 
        t1.Alias1,
        t1.Alias2,
        t1.Alias3
FROM #Table1 t1
JOIN #Table2 t2
ON t1.Alias2 = t2.Alias1
GO
DROP TABLE #Table1
DROP TABLE #Table2

我希望下面的问题能有所帮助

CREATE TABLE #Table1 (
                        Alias1 VARCHAR(35),
                        Alias2 VARCHAR(35),
                        Alias3 VARCHAR(35)
                        )
Go

CREATE TABLE #Table2 (
                        Alias1 VARCHAR(35),
                        Alias2 VARCHAR(35),
                        Alias3 VARCHAR(35)
                        )
GO
INSERT INTO #Table1(Alias1,Alias2,Alias3)
SELECT 'qaz','**abc**','wsx'
UNION ALL
SELECT 'edc','rfv','tgb'
GO
INSERT INTO #Table2(Alias1,Alias2,Alias3)
SELECT '**abc**','qwe','rty'
UNION ALL
SELECT 'zxc','zxxc','vbn'
GO
SELECT 
        t1.Alias1,
        t1.Alias2,
        t1.Alias3
FROM #Table1 t1
JOIN #Table2 t2
ON t1.Alias2 = t2.Alias1
GO
DROP TABLE #Table1
DROP TABLE #Table2

我希望下面的问题能有所帮助

CREATE TABLE #Table1 (
                        Alias1 VARCHAR(35),
                        Alias2 VARCHAR(35),
                        Alias3 VARCHAR(35)
                        )
Go

CREATE TABLE #Table2 (
                        Alias1 VARCHAR(35),
                        Alias2 VARCHAR(35),
                        Alias3 VARCHAR(35)
                        )
GO
INSERT INTO #Table1(Alias1,Alias2,Alias3)
SELECT 'qaz','**abc**','wsx'
UNION ALL
SELECT 'edc','rfv','tgb'
GO
INSERT INTO #Table2(Alias1,Alias2,Alias3)
SELECT '**abc**','qwe','rty'
UNION ALL
SELECT 'zxc','zxxc','vbn'
GO
SELECT 
        t1.Alias1,
        t1.Alias2,
        t1.Alias3
FROM #Table1 t1
JOIN #Table2 t2
ON t1.Alias2 = t2.Alias1
GO
DROP TABLE #Table1
DROP TABLE #Table2

我希望下面的问题能有所帮助

CREATE TABLE #Table1 (
                        Alias1 VARCHAR(35),
                        Alias2 VARCHAR(35),
                        Alias3 VARCHAR(35)
                        )
Go

CREATE TABLE #Table2 (
                        Alias1 VARCHAR(35),
                        Alias2 VARCHAR(35),
                        Alias3 VARCHAR(35)
                        )
GO
INSERT INTO #Table1(Alias1,Alias2,Alias3)
SELECT 'qaz','**abc**','wsx'
UNION ALL
SELECT 'edc','rfv','tgb'
GO
INSERT INTO #Table2(Alias1,Alias2,Alias3)
SELECT '**abc**','qwe','rty'
UNION ALL
SELECT 'zxc','zxxc','vbn'
GO
SELECT 
        t1.Alias1,
        t1.Alias2,
        t1.Alias3
FROM #Table1 t1
JOIN #Table2 t2
ON t1.Alias2 = t2.Alias1
GO
DROP TABLE #Table1
DROP TABLE #Table2


太好了。你试过什么?这不是一个很难的SQL查询。非常简单的直接连接..那么问题是什么呢?我想他使用“contain”这个词意味着他在寻找部分匹配。所以这不仅仅是这两个字段的内部连接。OP应该明确他想要什么。在这个上下文中包含的内容可以是Abigous。这太好了。你试过什么?这不是一个很难的SQL查询。非常简单的直接连接..那么问题是什么呢?我想他使用“contain”这个词意味着他在寻找部分匹配。所以这不仅仅是这两个字段的内部连接。OP应该明确他想要什么。在这个上下文中包含的内容可以是Abigous。这太好了。你试过什么?这不是一个很难的SQL查询。非常简单的直接连接..那么问题是什么呢?我想他使用“contain”这个词意味着他在寻找部分匹配。所以这不仅仅是这两个字段的内部连接。OP应该明确他想要什么。在这个上下文中包含的内容可以是Abigous。这太好了。你试过什么?这不是一个很难的SQL查询。非常简单的直接连接..那么问题是什么呢?我想他使用“contain”这个词意味着他在寻找部分匹配。所以这不仅仅是这两个字段的内部连接。OP应该明确他想要什么。在这个上下文中包含的内容可以是abiguous。他在表1的第一行,别名2的值,显示的是'abcdef',而不仅仅是'abc',所以在他的示例中,查询不会产生匹配项。他不是在寻找精确的匹配。这也是Pieter B发布的同一个查询。他的表1的第一行,别名2的值,显示“abcdef”,而不仅仅是“abc”,因此在他的示例中,该查询不会产生匹配项。他不是在寻找精确的匹配。这也是Pieter B发布的同一个查询。他的表1的第一行,别名2的值,显示“abcdef”,而不仅仅是“abc”,因此在他的示例中,该查询不会产生匹配项。他不是在寻找精确的匹配。这也是Pieter B发布的同一个查询。他的表1的第一行,别名2的值,显示“abcdef”,而不仅仅是“abc”,因此在他的示例中,该查询不会产生匹配项。他不是在寻找精确的匹配。这也是Pieter B发布的相同查询。