4

これから明確なtitle.idを取得するにはどうすればよいですか?

 SELECT Title.id, Title.title FROM titles as Title HAVING points > 0 
 UNION ALL 
 SELECT Title.id, Title.title FROM titles as Title HAVING points > 1

クエリにはまだまだありますが、これで十分です。

4

3 に答える 3

16

を削除するだけALLです。DISTINCT一部のフレーバーでは、より明示的にする代わりに追加することができALLますが、デフォルトでは常に重複をフィルタリングするため、冗長です。

MySQL- http:
//dev.mysql.com/doc/refman/5.0/en/union.html MSSQL- http://msdn.microsoft.com/en-us/library/ms180026.aspx
ORACLE- https:// docs.oracle.com/cd/B28359_01/server.111/b28286/queries004.htmPostgreSQL-http://www.postgresql.org/docs/8.3/interactive/queries-union.html など
_

于 2011-06-02T08:14:51.910 に答える
1

組合と2番目の部分を完全に取り除くのは簡単な方法ではありません:

SELECT Title.id, Title.title FROM titles as Title HAVING points > 0 

HAVING points > 0が含まれているのでHAVING points > 1

于 2011-06-02T08:20:58.060 に答える
0

ALL他の人が示唆しているように、あなたはドロップすることができます。

2つのクエリが同じテーブルを使用し、WHERE句のみまたは句のみが異なる場合はHAVING、次のように使用することもできます。

SELECT Title.id, Title.title FROM titles as Title
WHERE (1st query conditions)
   OR (2nd query conditions)

また

SELECT Title.id, Title.title FROM titles as Title
HAVING (1st query conditions)
    OR (2nd query conditions)
于 2011-06-02T08:49:24.330 に答える