2016-08-24 21 views
-1

私はPHPページを開発しようとしていますが、私は問題があります。重複しないでデータベースからデータを取得したいと思います。重複のないデータベースから選択

$tsql = "SELECT COUNT(ID) FROM FactoriesViolations"; 
$rowsPerPage = 25; 
$stmt = sqlsrv_query($conn, $tsql); 

私を助けてください。

ありがとうございます。

+1

'$ tsql =" Select Fact(DISTINCT ID)FROM FactoriesViolations "; ' – Saurabh

答えて

1

出力にはどのような列が必要ですか。もしその唯一のID

$tsql = "SELECT COUNT(DISTINCT(ID)) FROM FactoriesViolations"; 

あなたがテーブルからすべての列をしたいと重複レコード を排除する場合は、このクエリはニードフルを行います。

SELECT Col1, Col2,... ColN FROM FactoriesViolations GROUP BY Col1, Col2,... ColN; 

ここで、Col1、Col2、... ColNは、FactoriesViolationsテーブルの列名です。

1

以下のクエリを使用してください。それが動作します。

$tsql = "SELECT COUNT(DISTINCT ID) FROM FactoriesViolations"; 
1

ユニークなレコードの数のための方法以下の使用

SELECT COUNT(DISTINCT column_name) FROM FactoriesViolations; // column_name is column which contains duplicate 
1

DISTINCTキーワードは、全体の結果セットを通過し、クエリが実行された後に、すべての重複行を削除するには、サーバーに指示します。

フォーマット:

SELECT DISTINCT * 
FROM TABLE_NAME 
WHERE CONDITION(S) 

あなたのケースでは、次のクエリは、テーブル内の既存のすべてのユニークなIDの数を返します

$tsql = "SELECT COUNT(DISTINCT(ID)) FROM FactoriesViolations" ; 

これを動作するはずです。

+0

' DISTINCT'は関数ではありません。そして 'DISTINCT * 'は矛盾です。 – Strawberry

+0

私はそれが機能だと決して言わなかった。重複したレコードを削除するキーワードだと私は言った。 – mrid

+0

カッコが含まれていて、 '*'(またはID)がDISTINCTの引数であることを示しています。 – Strawberry

関連する問題