user2796914:
私はPHPとMySQLでの新たなんだと私はいくつかの問題を抱えています。
ここで例えば、私はそれが唯一のミセスMustermann私が試し示さなければならない。この場合... Wordpressの、JoomlaのとTYPO3のを扱うことができ、すべての人を、表示したいでしょうWHERE名=「Joomlaの」OR名前= 'WordPressのOR名前=」 TYPO3' 、それは私の悪い英語のための3つのいずれかで動作することができます人々は、...申し訳ありませんが示してい
EDIT
OPノート:提供例のデータはありません、ハードフリッピン問題のイメージを掲載する方法を「簡単」ではありません
nachname vorname email name id
--------- ------- ------------------- ---------- ---
Mustermann Mrs joomla 148
Mustermann Mrs wordpress 148
Mustermann Mrs typo3 148
Mustermann Muster [email protected] wordpress 158
Mustermann Muster [email protected] typo3 158
SELECT t.*
FROM ( SELECT 'Mustermann' AS nachname,'Mrs' AS vorname,'' AS email,'joomla' AS NAME,'148' AS id
UNION ALL SELECT 'Mustermann','Mrs','','wordpress','148'
UNION ALL SELECT 'Mustermann','Mrs','','typo3','148'
UNION ALL SELECT 'Mustermann','Muster','[email protected]','wordpress','158'
UNION ALL SELECT 'Mustermann','Muster','[email protected]','typo3','158'
) t
GMB:
典型的な溶液が使用group by
集計行同を有することnachname
、および次いでフィルタにhaving
句。
select nachname
from mytable
where name in ('joomla', 'wordpress', 'typo3')
group by id, nachname
having count(distinct name) = 3
私は想定id
の一意の識別子であり、nachname
私はそれを追加して、group by
句。それは場合でなければ、それを削除して自由に感じます。
このクエリは、あなたに与えられるnachname
3つのすべての値のために働いているのin
リストを。
これは、より多くの(または少ない)を処理するために、クエリを適応させることは非常に簡単ですname
修正することにより、S、in
リストおよびターゲット・カウントを。
重複がない場合(nachname, name)
、重複がテーブルには、使用することができますcount(*)
の代わりに、count(distinct ...)
より効率的になります。