1

私は1つのSQLクエリを持っています -

SELECT name_1, dpid_clid, city 
 FROM dts_master_dividend 
 WHERE upper(name_1) like upper('%') 
   AND dpid_clid like upper('IN30290243450560%')
 ORDER BY name_1 asc, dpid_clid asc, dividend_type desc

結果は次のように表示されます-

ABHINAV  BHARTI IN30290243450560    PUNE
ABHINAV  BHARTI IN30290243450560    DELHI
ABHINAV  BHARTI IN30290243450560    PUNE
ABHINAV  DUBEY  IN30290243450560    PUNE
ABHINAV  BHARTI IN30290243450560    PUNE

しかし、私は自分の結果を次のようにしたい-

ABHINAV  BHARTI IN30290243450560    PUNE
ABHINAV  BHARTI IN30290243450560    DELHI
ABHINAV  DUBEY  IN30290243450560    PUNE

つまり、レコードの一意のセットのみを意味します..
どうすれば取得できますか?

4

6 に答える 6

2

試す:

select distinct name_1, dpid_clid, city
  from dts_master_dividend
 where upper(name_1) like upper('%')
   and dpid_clid like upper('IN30290243450560%')
 order by name_1 asc, dpid_clid asc, dividend_type desc
于 2012-05-22T10:05:41.493 に答える
2

これを試して

select name_1, dpid_clid, city 
from dts_master_dividend 
where upper(name_1) like upper('%') and dpid_clid like upper('IN30290243450560%')
group by name_1, dpid_clid ,city
于 2012-05-22T10:27:46.117 に答える
0

データベースサーバーによって異なる場合がありますが、これを行うための標準的な方法は、

SELECT DISTINCT [columns] FROM [table]. 

だからあなたのクエリにDISTINCTを入れてみてください

select distinct name_1, dpid_clid, city from dts_master_dividend where upper(name_1) like  upper('%') and dpid_clid like upper('IN30290243450560%') order by name_1 asc, dpid_clid asc, dividend_type desc

詳細については、selectdistinctのw3schoolsページを参照してください。

于 2012-05-22T10:08:13.677 に答える
0

を使用するupper(name_1) like upper('%')代わりに and を避けてください。upper('IN30290243450560%')'IN30290243450560%'

したがって、クエリは次のようになります-

SELECT DISTINT name_1, dpid_clid, city
FROM dts_master_dividend
WHERE dpid_clid like 'IN30290243450560%'
ORDER BY name_1 asc, dpid_clid asc, dividend_type desc;
于 2012-05-22T10:09:23.393 に答える
0

DISTINCTキーワードを追加するだけです:

SELECT DISTINCT name_1, dpid_clid, city 
 FROM dts_master_dividend 
 WHERE upper(name_1) like upper('%') 
   AND dpid_clid like upper('IN30290243450560%')
 ORDER BY name_1 asc, dpid_clid asc, dividend_type desc

これにより、重複する行が結果セットから削除されます。MySQL ドキュメントについては、こちらを参照してください。

于 2012-05-22T10:05:56.503 に答える
0

使用DISTINCT:

SELECT distinct name_1, dpid_clid, city 
 FROM dts_master_dividend 
 WHERE upper(name_1) like upper('%') 
   AND dpid_clid like upper('IN30290243450560%')
 ORDER BY name_1 asc, dpid_clid asc
于 2012-05-22T10:06:06.660 に答える