2016-05-14 16 views
1

MySQLでビューを作成すると、作成されたビューにNULL値の行が表示されません。私たちはテーブルmail_prijava enter image description here作成したVIEWでNULLを参照できません

とテーブルstatus

enter image description here

を見ることができます

はここで、私は

CREATE OR REPLACE VIEW 
v_mail_prijava_test 
AS 
SELECT 
mail_prijava.id, 
mail_prijava.naselje AS naselje, 
mail_prijava.ulica AS ulica, 
mail_prijava.email AS email, 
mail_prijava.napomena AS napomena, 
IFNULL(status.opis AS "test") AS status 
DATE_FORMAT(datum_unosa, "%d.%m.%Y.") AS datum_servisa, 
vrijeme_unosa 
FROM mail_prijava 
INNER JOIN status ON status.id = mail_prijava.status_id 
以下のSQLコードを使用してテーブル mail_prijavaとテーブル statusからビューを作成したいです

I上記のコードを使用して、このテーブルを取得: enter image description here

問題は、テーブルmail_prijavaからNULL値を持つその行が表示されていないと、つまり、それが作成したビューにNULLを持つ行を表示することが可能である理由は、私は思ったんだけどあります。

あなたは

答えて

2

あなたの代わりにinner joinleft joinを使用する必要がstatusテーブル内の任意のマッチを持っていないものを含め、すべての行を取得するにはありがとうございます。

変更この:これに

INNER JOIN status ON status.id = mail_prijava.status_id 

LEFT JOIN status ON status.id = mail_prijava.status_id 

また、あなたのIFNULLラインは、あなたはおそらくしたい、奇妙に見える:

IFNULL(status.opis, "test") AS status -- this will show "test" as status if it's null 
+0

は素晴らしい、魔法のように動作します:) – Svinjica

関連する問題