これを行うための純粋なSQL方法はありますか?NULLの場合はSQLを挿入します
私はテーブル持っている:id, price
、および他のapple_info
:の行ごとにapple_id, color
を、私はそれがまだ存在しない場合、apple_info
に対応する行を追加します。この例は見つかりません。
これを行うための純粋なSQL方法はありますか?NULLの場合はSQLを挿入します
私はテーブル持っている:id, price
、および他のapple_info
:の行ごとにapple_id, color
を、私はそれがまだ存在しない場合、apple_info
に対応する行を追加します。この例は見つかりません。
はこれを試してみてください:
insert into apple_info (apple_id, color)
select a.id, 'some_color'
from apples a
left outer join apple_info ai
on (a.id = ai.apple_id)
where ai.apple_id is null;
あなたが実在しないapple_id
とcolor
のための固定値でapple_info
に行を挿入します。私はこれがあなたが望むものだと思います。
ありがとう、これは私が心に留めていたものです。 'LEFT OUTER JOIN'は私を捨てましたが、MySQLのLEFT JOINと同じです。http://stackoverflow.com/questions/2809594/basic-question-left-outer-join-vs-left-join – ash
INSERT IGNORE INTO apple_info(apple_id, color)
SELECT id, 'green' FROM apples
各りんごが挿入されるよう
、または全体のリンゴのテーブルに対して事後に? apple_infoへの挿入にどのように色の値が指定されていますか? – hatchet
事後(私が選択した設定値になります) – ash