必要なデータを選択するためのクエリの書き方を理解するのに苦労しています。
つまり、問題は次のとおりです。1 つのテーブルと、外部キーを持つ 3 つのテーブルがあります。どのフィールドがnullでないかに基づいて、最初のテーブルからすべてのフィールドを選択し、他の3つのテーブルから1つをエイリアスとして選択する必要があります。ほとんどの場合、3 つのテーブルのうち 2 つに指定された列の null 値がありますが、null 以外の値が 2 つある場合は、最初に見つかったものを選択します。
うまく説明できていないかもしれませんが、例を挙げて説明します。このメインテーブルがあるとしましょう
Table_1
TableOneID int(11),
SomeOtherData text
Table_2
TableTwoID int(11),
TableOneID int(11),
TableTwoValue varchar(250)
Table_3
TableThreeID int(11),
TableOneID int(11),
TableThreeValue varchar(250)
Table_4
TableFourID int(11),
TableOneID int(11),
TableFourValue varchar(250)
だから私は何かをしたい
SELECT *, (HERE TO SELECT FIRST NON NULL VALUE FROM Table_2(TableTwoValue),
Table_3(TableThreeValue) or Table_4(TableFourValue)) AS ExtraField FROM Table_1
LEFT JOIN Table_2 USING(TableOneID) ..... LEFT JOIN Table_4 USING(TableOneID);
これが起こる可能性はありますか?:)