我希望有人可以提供帮助,因为这非常麻烦,我需要很长的SELECT子选择项,因为我需要多个细分,并且每次在底部添加最后一个INNER JOIN时都会遇到别名错误,请协助:( 谢谢您的时间:
SELECT
aa.transaction,
aa.meta_block_timestamp,
aa.blockchain_transaction_id,
COUNT(aa.to_val), SUM(aa.value_int) FROM (
SELECT DISTINCT
transactions.transaction,
transactions.blockchain_transaction_id,
transactions.meta_block_timestamp,
to_val, value_int
FROM accounts INNER JOIN transactions
ON accounts.account = transactions.origin
INNER JOIN blockchain
ON blockchain.number = transactions.blockchain_transaction_id
INNER JOIN clauses
ON transactions.transaction = clauses.transaction_id
WHERE accounts.account = LOWER('0xe0EB562acD5F10A60EB3c37886C58fe90d7086BE')
) as aa
INNER JOIN (
/* adding this SELECT below causes the problem :( */
SELECT yy.transaction, count(yy.to_val) FROM (
SELECT DISTINCT transaction, clauses.to_val FROM transactions
INNER JOIN clauses
ON transactions.transaction = clauses.transaction_id
WHERE transactions.transaction = LOWER('0x90154fb433a6f2a308fd0b27e50f4a29d22c1cb8c7e4b00cbf608dd0b0019ce8')
GROUP BY yy.transaction
) as yy
) as BB on aa.transaction = BB.transaction
GROUP BY
BB.transaction,
aa.transaction,
aa.meta_block_timestamp,
aa.blockchain_transaction_id
ORDER BY aa.meta_block_timestamp DESC
塞恩
答案 0 :(得分:1)
我修复了SQL,添加了BB别名,希望对您有所帮助。 (我真的不知道您的SQL表和用途)
SELECT
aa.transaction,
aa.meta_block_timestamp,
aa.blockchain_transaction_id,
COUNT(aa.to_val), SUM(aa.value_int) FROM (
SELECT DISTINCT
transactions.transaction,
transactions.blockchain_transaction_id,
transactions.meta_block_timestamp,
to_val, value_int
FROM accounts INNER JOIN transactions
ON accounts.account = transactions.origin
INNER JOIN blockchain
ON blockchain.number = transactions.blockchain_transaction_id
INNER JOIN clauses
ON transactions.transaction = clauses.transaction_id
WHERE accounts.account = LOWER('0xe0EB562acD5F10A60EB3c37886C58fe90d7086BE')
) as aa
INNER JOIN (
/* adding this SELECT below causes the problem :( */
SELECT yy.transaction, count(yy.to_val) FROM (
SELECT DISTINCT transaction, clauses.to_val FROM transactions
INNER JOIN clauses
ON transactions.transaction = clauses.transaction_id
WHERE transactions.transaction = LOWER('0x90154fb433a6f2a308fd0b27e50f4a29d22c1cb8c7e4b00cbf608dd0b0019ce8')
) as yy
) as BB on aa.transaction = BB.transaction
GROUP BY
BB.transaction,
aa.transaction,
aa.meta_block_timestamp,
aa.blockchain_transaction_id
ORDER BY aa.meta_block_timestamp DESC