Note that there are some explanatory texts on larger screens.

plurals
  1. POInserting Missing Rows
    primarykey
    data
    text
    <p>I've got an interesting SQL puzzle I haven't been able to solve, hopefully one of you have more SQL-Fu than I do. I have two tables set up something like this:</p> <pre><code>tblFormElement FrmElementID Label tblFormSubmissionElement FrmID_fk FrmElementID_fk SubmitID_fk SubmissionValue </code></pre> <p>And if I run the following SQL:</p> <pre><code>SELECT tblFormElement.Label, tblFormSubmissionElement.* FROM tblFormElement JOIN tblFormSubmissionElement ON FrmElementID = FrmElementID_fk WHERE FrmID_fk = 55 AND SubmitID_fk = 7062 </code></pre> <p>I'll get a result set that looks like this:</p> <pre><code>Label | FrmID_fk | FrmElementID_fk | SubmitID_fk | SubmissionValue Label1 | 55 | 1601 | 7062 | Foo1 Label2 | 55 | 1602 | 7062 | Foo2 Label3 | 55 | 1603 | 7062 | Foo3 Label4 | 55 | 1604 | 7062 | Foo4 Label5 | 55 | 1605 | 7062 | Foo5 </code></pre> <p>Now if I change the SubmitID_fk to anything below 7062, I'll get a result like this:</p> <pre><code>Label | FrmID_fk | FrmElementID_fk | SubmitID_fk | SubmissionValue Label1 | 55 | 1601 | 5011 | Foo1 Label2 | 55 | 1602 | 5011 | Foo2 Label3 | 55 | 1603 | 5011 | Foo3 Label5 | 55 | 1605 | 5011 | Foo5 </code></pre> <pre> What I would like to do is execute an INSERT statement for every one of these result sets which lack that Label4 row. Or in other words, For each result set which does not contain a row with FrmElementID_fk equal to 1604, INSERT the row with the respective columns. Any thoughts on how to attack this problem?</pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload