2 mysql 次查询
2 mysql queries at once
我有一个像这样的table..
[id][Col1][Col2][id_duplicated]
10 abc1 defg NULL
12 text text NULL
50 abc2 text NULL
90 NULL NULL 10
500 NULL NULL 10
620 NULL NULL 50
700 text text NULL
Id_duplicated 是一个值,它标记是同一个 table 行 'id' 的副本。如果我 select id 620 将显示所有值来自 id 50
问题:
select id,col1 from table where col1 is like '%abc%'
只会显示 id=10 和 id=50 行,但如果有这些 id 的副本,我也需要显示
我想我需要一个子查询,首先查找是否有任何 '%abc%',然后第二个子查询检查 id_duplicated 上是否有任何副本等于 10 和 50 等等... .
所以总而言之,我需要一个显示此结果的查询
[id][Col1][Col2][id_duplicated]
10 abc1 defg NULL
50 abc2 text NULL
90 NULL NULL 10
500 NULL NULL 10
620 NULL NULL 50
对不起我的英语
如果你想要额外的行,你可以使用 union 和 select 在 id_duplicated:
中查找结果的 id
http://sqlfiddle.com/#!9/ad817/8
select id,col1, col2, id_duplicated
from table
where col1 like '%abc%'
UNION
select id, col1, col2, id_duplicated
FROM table
WHERE id_duplicated IN (select id from table where col1 like '%abc%')
我有一个像这样的table..
[id][Col1][Col2][id_duplicated]
10 abc1 defg NULL
12 text text NULL
50 abc2 text NULL
90 NULL NULL 10
500 NULL NULL 10
620 NULL NULL 50
700 text text NULL
Id_duplicated 是一个值,它标记是同一个 table 行 'id' 的副本。如果我 select id 620 将显示所有值来自 id 50
问题:
select id,col1 from table where col1 is like '%abc%'
只会显示 id=10 和 id=50 行,但如果有这些 id 的副本,我也需要显示
我想我需要一个子查询,首先查找是否有任何 '%abc%',然后第二个子查询检查 id_duplicated 上是否有任何副本等于 10 和 50 等等... .
所以总而言之,我需要一个显示此结果的查询
[id][Col1][Col2][id_duplicated]
10 abc1 defg NULL
50 abc2 text NULL
90 NULL NULL 10
500 NULL NULL 10
620 NULL NULL 50
对不起我的英语
如果你想要额外的行,你可以使用 union 和 select 在 id_duplicated:
中查找结果的 idhttp://sqlfiddle.com/#!9/ad817/8
select id,col1, col2, id_duplicated
from table
where col1 like '%abc%'
UNION
select id, col1, col2, id_duplicated
FROM table
WHERE id_duplicated IN (select id from table where col1 like '%abc%')