Plan-of-SQLs Interface TP

Task: Verify the Statement against the Table

Statement: steve stricker had a score lower than phil mickelson

Table: 2006 u.s. open (golf)

place player country score to_par
1 steve stricker united states 70 + 69 = 139 - 1
2 colin montgomerie scotland 69 + 71 = 140 e
t3 kenneth ferrie england 71 + 70 = 141 + 1
t3 geoff ogilvy australia 71 + 70 = 141 + 1
t5 jim furyk united states 70 + 72 = 142 + 2
t5 pádraig harrington ireland 70 + 72 = 142 + 2
t7 jason dufner united states 72 + 71 = 143 + 3
t7 graeme mcdowell northern ireland 71 + 72 = 143 + 3
t7 phil mickelson united states 70 + 73 = 143 + 3
t7 arron oberholser united states 75 + 68 = 143 + 3
Generating plan to answer the query...

Generated steps

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

Step 2: Select rows where 'player' is 'steve stricker' or 'phil mickelson'.

Step 3: Use a `CASE` statement to return TRUE if the score of 'steve stricker' is lower than the score of 'phil mickelson', otherwise return FALSE.

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

SQL command for the step:

SELECT * FROM table_sql ORDER BY score ASC;
place player country score to_par
1 steve stricker united states 70 + 69 = 139 - 1
2 colin montgomerie scotland 69 + 71 = 140 e
t3 kenneth ferrie england 71 + 70 = 141 + 1
t3 geoff ogilvy australia 71 + 70 = 141 + 1
t5 jim furyk united states 70 + 72 = 142 + 2
t5 pádraig harrington ireland 70 + 72 = 142 + 2
t7 jason dufner united states 72 + 71 = 143 + 3
t7 graeme mcdowell northern ireland 71 + 72 = 143 + 3
t7 phil mickelson united states 70 + 73 = 143 + 3
t7 arron oberholser united states 75 + 68 = 143 + 3

Step 2: Select rows where 'player' is 'steve stricker' or 'phil mickelson'.

SQL command for the step:

SELECT * FROM table_sql WHERE player IN ('steve stricker', 'phil mickelson');
place player country score to_par
1 steve stricker united states 70 + 69 = 139 - 1
2 colin montgomerie scotland 69 + 71 = 140 e
t3 kenneth ferrie england 71 + 70 = 141 + 1
t3 geoff ogilvy australia 71 + 70 = 141 + 1
t5 jim furyk united states 70 + 72 = 142 + 2
t5 pádraig harrington ireland 70 + 72 = 142 + 2
t7 jason dufner united states 72 + 71 = 143 + 3
t7 graeme mcdowell northern ireland 71 + 72 = 143 + 3
t7 phil mickelson united states 70 + 73 = 143 + 3
t7 arron oberholser united states 75 + 68 = 143 + 3

Step 3: Use a `CASE` statement to return TRUE if the score of 'steve stricker' is lower than the score of 'phil mickelson', otherwise return FALSE.

SQL command for the step:

SELECT CASE WHEN (SELECT score FROM table_sql WHERE player_name = 'steve stricker') < (SELECT score FROM table_sql WHERE player_name = 'phil mickelson') THEN TRUE ELSE FALSE END AS verification;
place player country score to_par
1 steve stricker united states 70 + 69 = 139 - 1
t7 phil mickelson united states 70 + 73 = 143 + 3

Verification:

The statement is TRUE