Plan-of-SQLs Interface TN

Task: Verify the Statement against the Table

Statement: over three teams have the same number of goals scored against them

Table: 1940 in brazilian football

position team points played against difference
1 flamengo 13 8 12 8
2 fluminense 13 8 15 10
3 corinthians 9 8 15 4
4 palestra itália 8 8 19 3
5 portuguesa 7 8 23 - 10
6 botafogo 6 8 25 0
7 vasco da gama 6 8 19 - 2
8 américa 6 8 25 - 10
9 são paulo 4 8 24 - 13
Generating plan to answer the query...

Generated steps

Step 1: Order the table by the 'against' column in ascending order.

Step 2: Select rows where the 'against' column is equal to the value in the first row.

Step 3: Use a `CASE` statement to return TRUE if the number of rows is greater than or equal to 3, otherwise return FALSE.

Step 1: Order the table by the 'against' column in ascending order.

SQL command for the step:

SELECT * FROM table_sql ORDER BY against ASC;
position team points played against difference
1 flamengo 13 8 12 8
2 fluminense 13 8 15 10
3 corinthians 9 8 15 4
4 palestra itália 8 8 19 3
5 portuguesa 7 8 23 - 10
6 botafogo 6 8 25 0
7 vasco da gama 6 8 19 - 2
8 américa 6 8 25 - 10
9 são paulo 4 8 24 - 13

Step 2: Select rows where the 'against' column is equal to the value in the first row.

SQL command for the step:

SELECT * FROM table_sql WHERE against = (SELECT against FROM table_sql LIMIT 1);
position team points played against difference
1 flamengo 13 8 12 8
2 fluminense 13 8 15 10
3 corinthians 9 8 15 4
4 palestra itália 8 8 19 3
7 vasco da gama 6 8 19 - 2
5 portuguesa 7 8 23 - 10
9 são paulo 4 8 24 - 13
6 botafogo 6 8 25 0
8 américa 6 8 25 - 10

Step 3: Use a `CASE` statement to return TRUE if the number of rows is greater than or equal to 3, otherwise return FALSE.

SQL command for the step:

SELECT CASE WHEN COUNT(*) >= 3 THEN TRUE ELSE FALSE END AS verification FROM table_sql;
position team points played against difference
1 flamengo 13 8 12 8

Verification:

The statement is FALSE