
お世話になります。
Oracle Sqlでの質問を致します。
Oracleのデータで重複データを削除したく
下記の構文を書いたのですが、
右括弧がありませんと言うエラーが出てしまいます。
見た目括弧はちゃんとあると思うのですが、
どこが悪いのか分かりません。
ご親切な方、ご教示くださいます様、
宜しくお願いいたします。
記
DELETE FROM D入庫データ
WHERE ID NOT IN
(
SELECT MIN(ID)
FROM D入庫データ
GROUP BY PPID,台車番号,入庫数量,ロット番号,TO_CHAR(登録日時,'yyyy,mm,dd')
WHERE TO_CHAR(SYSDATE,'yyyy/mm/dd)=TO_CHAR(登録日時,'yyyy/mm/dd')
);
No.4ベストアンサー
- 回答日時:
> 但し、私はWHEREの所で、今日のデータの中の重複データを削除されるつもり
> でいたのですが、今日以前の物も全て削除されてしまいました。
> 構文に誤りがあるのでしょうか。
構文に誤りはありません。構文通りに削除されただけです。
*WHERE句とGROUP BY句は、なんか引っかかってたのですが気付きませんでした。
副問い合わせの部分で、今日(SYSDATE)の重複しているデーターのID最少値を取得しています。
DELETEでは、そのID以外をすべて削除、ですので、日付などは関係なく削除されます。
今日のみというのであれば、DELETE文にもWHERE句で日付の指定を入れてください。
DELETE FROM D入庫データ
WHERE ID NOT IN (
SELECT MIN(ID) FROM D入庫データ
WHERE TO_CHAR(SYSDATE, 'yyyy/mm/dd') = TO_CHAR(登録日時, 'yyyy/mm/dd')
GROUP BY PRID, 台車番号, 入庫数量, ロット番号, TO_CHAR(登録日時, 'yyyy,mm,dd')
)
AND TO_CHAR(SYSDATE, 'yyyy/mm/dd') = TO_CHAR(登録日時, 'yyyy/mm/dd')
;
----
NOT EXISTS句を利用した方がパフォーマンスが良くなるかもしれませんが詳しくは調べてください。
No.2
- 回答日時:
括弧の一部に全角のものがあります。
SYSDATEのTO_CHARの型指定にシングルクォーテーションの"閉じ"がありません。
この回答への補足
有難うございます。
しかし、今回質問をする際構文の内容を手入力した物で
ORACLEの方ではシングルの"閉じ"は有り、また括弧も半角に
なっていました。
そして、
WHERE TO_CHAR(SYSDATE,'yyyy/mm/dd)=TO_CHAR(登録日時,'yyyy/mm/dd')
GROUP BY PPID,台車番号,入庫数量,ロット番号,TO_CHAR(登録日時,'yyyy,mm,dd')
と1行入れ替えましたらエラーがかからず動きました。
但し、私はWHEREの所で、今日のデータの中の重複データを削除されるつもり
でいたのですが、今日以前の物も全て削除されてしまいました。
構文に誤りがあるのでしょうか。
お分かりになる様でしたらご教示下さいます様、宜しくお願い致します。
No.1
- 回答日時:
引用符に着目。
> WHERE TO_CHAR(SYSDATE,'yyyy/mm/dd)=TO_CHAR(登録日時,'yyyy/mm/dd')
たぶん早い者勝ちの回答。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Oracle 質問です。 下記のテーブルとデータがあり、 取得想定結果のように出力したいです。 下記のsqlだと0 2 2023/05/23 19:10
- MySQL SQLについて教えて下さい。 SELECT分で、あるカラムにある日付の 半年先のデータを取って来たい 3 2022/12/07 22:28
- MySQL SQLです。下記の問合せを行うクエリを、PhpMyAdminで作成して実行せよ。 「昨年の各月の総降 1 2023/07/01 00:32
- MySQL ある時間以内の利用者の抽出について 3 2022/03/26 11:15
- MySQL SQLについて質問です。 SELECT TO_CHAR(TO_DATE('90-10-08.'YY- 4 2022/05/13 20:55
- Excel(エクセル) Excel 数行を1組とする300組ほどあるデータの項目を揃えたいです。 3 2023/01/26 19:38
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/01/23 09:24
- Access(アクセス) Accessのデータ型の日付/時刻型について 1 2023/04/02 17:03
- Access(アクセス) エクセルのVBAについて教えてください。 4 2023/01/21 10:21
- Excel(エクセル) 【vba】日付の形式が勝手に変わってしまう。 1 2022/09/29 10:54
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
日付型カラムへのデータINSERT
-
Datetime型とDate型
-
SQLエラーについて
-
DB2でのシステム日付のinsert、...
-
date型へのinsertについて
-
Access 日付けについての関数
-
Accessのマクロでモジュールを...
-
Statement ignored というエラー
-
SQL(SELECT文)を教えてください
-
今日の日付が入った行のデータ...
-
ストアドプロシジャからストア...
-
【Excel VBA】 WorksheetやRa...
-
Access VBAで行ラベルが定義さ...
-
SQL Serverの型変換について
-
OutlookVBAで作成したマクロに...
-
SQLサーバで和暦から西暦に変換...
-
Texの枠囲み調節
-
日付書式に変換でこまっています!
-
PL/SQLでSPOOLさせたいのですが...
-
外部結合と等価結合のパフォー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
日付型カラムへのデータINSERT
-
SQL*Loaderでのsysdate使用
-
DB2でのシステム日付のinsert、...
-
SQL*Loader フォーマット変換...
-
date型のインデックス
-
SQL*PLUSでの分秒までの表示の仕方
-
ALTER SESSIONについて
-
エクセル上の 2017/10/27 7:01...
-
to_date使用時に発生するエラー...
-
SQL Server で 翌月10日を取...
-
SQLエラーについて
-
実行エラー 3075:クエリ式`作...
-
(日付 - 日付)/数値
-
SQL Sever での日付の差の求め...
-
SQLです。下記の問合せを行うク...
-
yyy/mm/dd/形式
-
日付範囲を展開したレコードを...
-
date型へのinsertについて
-
Access VBA で Format ( date ,...
-
ACCESS2000でクエリを抽出条件...
おすすめ情報