如何加入两个查询以进行子查询
How to join two queries to make a subquery
我的第一个查询给出了一组值,第二个查询给出了这组值中的最大值。
我想合并这两个查询。我试过如下:
第一次查询:
SELECT SUBSTR(column, INSTR(column, ' ')+1,3)
from table
WHERE column LIKE '#13 %'
第二次查询:
SELECT MAX(column)
合并:
SELECT MAX(column)
FROM table WHERE column = (
SELECT SUBSTR(column, INSTR(column, ' ')+1,3)
from table
WHERE column LIKE '#13 %'
)
你能帮我如何合并两个查询吗?
第一个查询结果:
30
1
2
3
12
13
14
15
16
17
18
19
我想在我的第二个查询中获得这组值的最大值:30
。
SUBSTR(column, INSTR(column, ' ') + 1, 3)
的结果是一个字符串,因此您必须将其转换为数字,只需添加 0
.
即可完成
然后使用MAX()
聚合函数:
SELECT MAX(SUBSTR(column, INSTR(column, ' ') + 1, 3) + 0)
FROM tablename
WHERE column LIKE '#13 %';
因为你在 WHERE
子句中有条件 column LIKE '#13 %'
,那么你知道列中的第一个 space 在位置 4,所以你可以简化为:
SELECT MAX(SUBSTR(column, 5, 3) + 0)
FROM tablename
WHERE column LIKE '#13 %';
我的第一个查询给出了一组值,第二个查询给出了这组值中的最大值。 我想合并这两个查询。我试过如下:
第一次查询:
SELECT SUBSTR(column, INSTR(column, ' ')+1,3)
from table
WHERE column LIKE '#13 %'
第二次查询:
SELECT MAX(column)
合并:
SELECT MAX(column)
FROM table WHERE column = (
SELECT SUBSTR(column, INSTR(column, ' ')+1,3)
from table
WHERE column LIKE '#13 %'
)
你能帮我如何合并两个查询吗?
第一个查询结果:
30
1
2
3
12
13
14
15
16
17
18
19
我想在我的第二个查询中获得这组值的最大值:30
。
SUBSTR(column, INSTR(column, ' ') + 1, 3)
的结果是一个字符串,因此您必须将其转换为数字,只需添加 0
.
即可完成
然后使用MAX()
聚合函数:
SELECT MAX(SUBSTR(column, INSTR(column, ' ') + 1, 3) + 0)
FROM tablename
WHERE column LIKE '#13 %';
因为你在 WHERE
子句中有条件 column LIKE '#13 %'
,那么你知道列中的第一个 space 在位置 4,所以你可以简化为:
SELECT MAX(SUBSTR(column, 5, 3) + 0)
FROM tablename
WHERE column LIKE '#13 %';