0

SQL テーブル列のインデックスを作成したいのですが、ここでも以前に質問しました: https://stackoverflow.com/questions/17842488/index-similar-records-sql-server

すべてのデータを既存のテーブルから新しいテーブルにコピーするクエリを作成したことを知る必要があります。クエリは Java プラットフォームを使用して実行されます。

 Statement stat=con.createStatement();
 ResultSet ss;
 String s="Select * INTO log2 FROM log SELECT *, DENSE_RANK() OVER (ORDER BY ip) basescore from log";
 ss=stat.executeQuery(s);

問題は、log2 という名前のテーブルを新しいテーブルとして作成し、値を生成せずに basescore 列を作成することです! SQL Server クエリで試してみたところ、正常に実行されたため、Java で動作しない理由はわかりません。誰か助けてくださいお願いします彼に感謝します

4

1 に答える 1

2

log2からの値logと密なランクを使用して新しいテーブルを作成する場合basescore、クエリは次のようになります。

SELECT *, DENSE_RANK() OVER (ORDER BY ip) basescore INTO log2 FROM log

一意の行のみが必要な場合は、DISTINCT後にキーワードを追加できますSELECT(使用する代わりに*、クエリで列名を指定することもできます)。

于 2013-07-25T09:45:32.390 に答える