8 つのフィールド (sp、lp、gp、sr、zd、md、pr、rs) の値を CONCAT し、結果を「化学」として返したいと考えています。問題は、1 つのレコードが 8 つの可能な値のうち 2 つ (おそらく 3 つまたは 4 つ) の値しか持たず、残りの値が NULL になることです。さらに、値が NULL の場合、前のテキスト (SP:、LP:、GP:、SR: など) も (改行) も表示されないようにします。
ここでの調査から、CONCAT_WS() と IFNULL() に出会いました。希望する結果を得るには、これらの機能を実装するための支援が必要です。
CONCAT(
'SP: ', sp, '<br />',
'LP: ', lp, '<br />',
'GP: ', gp, '<br />',
'SR: ', sr, '<br />',
'ZD: ', zd, '<br />',
'MD: ', md, '<br />',
'PR: ', pr, '<br />',
'RS: ', rs
) AS chemistry