我被问到这个问题:
使用FROM子句中的子查询仅从中检索发票 室' H'和发票金额大于10000并加入 结果使用数字列的航次表。仅限项目 检索联合结果的船名和发票金额。订购 按发票金额。
所以,我做了这个:
SELECT chamber =
(
SELECT chamber
FROM invoices
INNER JOIN voyages ON chambers.chamber ='H'
AND chambers.invoice > 10000
AND invoice.number=voyages.number
),
boatname,
invoice
FROM chambers,
voyages,
invoices
WHERE chambers.chamber = invoices.chamber,
invoices.number = voyages.number
这是商会表:
# chamber name
1 A New York
这是发票表:
# number invoice chamber
1 8300 9189 A
然而它一直给我这个错误:Query failed: near ",": syntax error
答案 0 :(得分:1)
您的指示说将子查询放在FROM子句中,并将其作为腔室列的赋值。你想要做的是:
SELECT b.boatname
,a.invoice
FROM (SELECT number, invoice
FROM invoices
WHERE chamber = 'H'
AND invoice > 10000) a
INNER JOIN voyages b ON a.number = b.number
ORDER BY a.invoice DESC