Pokud jsem správně odstranil vaši otázku, lze tento problém vysvětlit pomocí níže uvedeného zjednodušeného příkladu:
V tabulce users
jsou následující záznamy :
| iduser |
|--------|
| 1 |
| 2 |
| 3 |
| 4 |
| 5 |
a v tabulce phone
jsou následující záznamy pouze pro dva uživatele:
| user | phone |
|------|-------------|
| 2 | 123-343-444 |
| 5 | 222-444-363 |
a chcete vložit záznamy pomocí nějakého "výchozího" telefonu, řekněme 111-222-333
pro uživatele, kteří nejsou v této tabulce (uživatelé 1, 3 a 4), a nakonec by tabulka měla vypadat takto:
| user | phone |
|------|-------------|
| 1 | 111-222-333 |
| 2 | 123-343-444 |
| 3 | 111-222-333 |
| 4 | 111-222-333 |
| 5 | 222-444-363 |
Pokud ano, použijte následující dotaz:
INSERT INTO phone( user, phone )
SELECT iduser, '111-222-333'
FROM user
WHERE iduser NOT IN ( SELECT user FROM phone );
Ukázka:http://sqlfiddle.com/#!9/94158/2