2016-10-24 10 views
1

SQLでビューを作成しようとしています。このビュー "A7T8"と呼ぶことにします。ビューは、データベースからファーストネームとファーストネームを引き出し、ファーストネームとファーストネームをFullNameというフィールドに連結します。しかし、私は最初と最後の名前に少なくとも4つの合計がある連結名を選択したいだけです。 (彼女はわずか3として、しかしハリー・フラナガンが表示されるがありますので、レベッカアーロンソンは表示されませんでしたSQL連結クエリ - 連結名のように4つ

現在、私のコードは次のとおりです。

CREATE VIEW A7T8 AS 
SELECT FNAME || ' ' || LNAME AS FULLNAME 
FROM A7 
WHERE Upper(LNAME) LIKE '%A%A%A%A%' OR Upper(FNAME) LIKE '%A%A%A%A%' 
ORDER BY LNAME, FNAME; 

しかし、これが唯一の最初の名前のように4を持っている名前を引っ張りますまたは4つのAsを姓に入れてください。連結したフルネームで合計4つ以上の名前を引き出すにはどうすればよいですか?

+0

をDBMSが使用されているもの? –

答えて

0

を試すことができますあなたは、単に書くことができます。

CREATE VIEW A7T8 AS 
SELECT FNAME || ' ' || LNAME AS FULLNAME 
FROM A7 
WHERE UPPER(FNAME || ' ' || LNAME) LIKE '%A%A%A%A%' 
ORDER BY LNAME, FNAME; 
-1

REGEXを使用します。 -4A's

CREATE VIEW A7T8 AS SELECT FNAME || '' || LNAME AS FULLNAME FROM A7 WHERE CONCAT(上(LNAME)、 ""、上(FNAME))REGEX '[A] {1,4}' ORDER BY LNAME、FNAME;

0

あなたは以下のアプローチに

CREATE VIEW A7T8 AS 
select FNAME + ' ' + LNAME AS FULLNAME 
from [A7] 
where len(FNAME + LNAME) - len(Replace(Upper(FNAME) + Upper(LNAME),'A','')) >= 4 
ORDER BY LNAME, FNAME;