2017-01-26 6 views
0

私はユーザーがフォームを記入できるWebアプリケーションを持っており、結果はMySQL DBに登録されています。 ここにDBがあります:USERS(id,name,email,extras)文字列sqlと異なる場合に選択

ユーザーがフォーム#1を使用する場合、ID、名前、電子メールがDBに入力されます。 ユーザーがフォーム#2を使用する場合は、idとextrasがDBに入力されます。

だから私のようなテーブルがあります。

1 | John  | [email protected]  | 

2 | Johnny | [email protected] | 

3 | undefined | undefined   | "name: Dumbo, email: [email protected]" 

を私はエキストラが空であるすべての行から名前とメールアドレスを抽出したいと思います:このクエリは大丈夫です。 名前と電子メールが定義されていない行から追加情報を抽出したいのですが。これらのクエリを組み合わせてください。

どうすればいいですか?

ありがとうございました。

+0

「未定義」とはどういう意味ですか?ヌル? –

+0

いいえ、文字列 'undefined'が書き込まれます –

答えて

0
SELECT * FROM USERS 
WHERE COALESCE(extras) = '' OR 
(name = 'undefined' AND email = 'undefined'); 
+0

ありがとうございました。また、電子メールと名前= '未定義'の場合にのみ追加を選択することは可能ですか?また、名前だけを選択し、エキストラが空のときに電子メールを送ります。 –

+0

1つのSELECTで異なる列を要求しているため、異なるSELECTを使用する必要があります。 –

+0

あなたのアドバイスありがとう、私はあなたのクエリに基づいて何かを試してみます –

関連する問題