English 中文(简体)
结构:发现两个表格之间的差额?
原标题:SQL: detecting differences in sums between two tables?
  • 时间:2011-02-23 20:47:01
  •  标签:
  • sql
  • sum

似乎很简单: 我有两票,我想看到哪些国家拥有不同的票数。 单独而言,这非常容易:

select state, sum(votes) from votes_a group by state;

select state, sum(votes) from votes_b group by state;

对于有不同结果的国家,我如何问及诸如<条码>、选票_a、选票_b

最佳回答

加入:

SELECT
    totals_a.state,
    totals_a.total_votes,
    totals_b.total_votes
FROM
(
    SELECT state, SUM(votes) AS total_votes
    FROM votes_a
    GROUP BY state
) AS totals_a
JOIN
(
    SELECT state, SUM(votes) AS total_votes
    FROM votes_b
    GROUP BY state
) AS totals_b
ON totals_a.state = totals_b.state
WHERE totals_a.total_votes <> totals_b.total_votes

请注意,这将错失在表内获得零票的国家。 为了确定这一点,你可以使用“未来”组织(假设你的数据库支持这一特征),并检查“民族解放军”。

问题回答

......

select state, sum(votes_a), sum(votes_b)
from (select state, sum(votes) votes_a, 0 votes_b
      from votes_a 
      group by state) tbl_a
     (select state, 0 votes_a, sum(votes) votes_b
      from votes_b
      group by state ) tbl_b
where tbl_a.state = tbl_b.state
group by state




相关问题
SQL SubQuery getting particular column

I noticed that there were some threads with similar questions, and I did look through them but did not really get a convincing answer. Here s my question: The subquery below returns a Table with 3 ...

难以执行 REGEXP_SUBSTR

I m 查询Oracle 10g。 我有两张表格(样本数据见下文)。 i m 试图提取一些领域

SQL Query Shortcuts

What are some cool SQL shorthands that you know of? For example, something I learned today is you can specify to group by an index: SELECT col1, col2 FROM table GROUP BY 2 This will group by col2

PHP array callback functions for cleaning output

I have an array of output from a database. I am wondering what the cleanest way to filter the values is example array Array ( [0] => Array ( [title] => title 1 ...

OracleParameter and DBNull.Value

we have a table in an Oracle Database which contains a column with the type Char(3 Byte). Now we use a parameterized sql to select some rows with a DBNull.Value and it doesn t work: OracleCommand ...

Running numbers in SQL

I have a SQL-statement like this: SELECT name FROM users WHERE deleted = 0; How can i create a result set with a running number in the first row? So the result would look like this: 1 Name_1 2 ...

How to get SQL queries for each user where env is production

I’m developing an application dedicated to generate statistical reports, I would like that user after saving their stat report they save sql queries too. To do that I wrote the following module: ...

热门标签