Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Cara membandingkan nilai numerik dalam kolom yang sama untuk beberapa kolom menggunakan Oracle SQL

Create Table V(TName VARCHAR(5), Oct_14 NUMBER(5,2), Nov_14 NUMBER(5,2), Dec_14 NUMBER(5,2));

Insert into V values('T1', 1.2, 1.2, 1.2);
Insert into V values('T2', 1.4, 1.5, 1.6);
Insert into V values('T3', 1.5, 1.5, 1.7);

SELECT TName, To_Char(Oct_14) Oct_14, To_Char(Nov_14) Nov_14, To_Char(Dec_14) Dec_14 from V
UNION
SELECT 'Compare', 
(select 'ATTN' from dual where EXISTS (select 1 from V where TName = 'T3' and OCT_14 > ALL(SELECT OCT_14 FROM V WHERE TName IN ('T1','T2')))) Oct_14_Res,
(select 'ATTN' from dual where EXISTS (select 1 from V where TName = 'T3' and Nov_14 > ALL(SELECT Nov_14 FROM V WHERE TName IN ('T1','T2')))) Nov_14_Res,
(select 'ATTN' from dual where EXISTS (select 1 from V where TName = 'T3' and Dec_14 > ALL(SELECT Dec_14 FROM V WHERE TName IN ('T1','T2')))) Dec_14_Res
FROM dual;

Seharusnya ada cara lain untuk melakukannya dengan lebih baik.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara menggabungkan dua skema database serupa di PL/SQL?

  2. Produk() fungsi agregat

  3. .Net - Membuat recordset Sesuai Permintaan daripada menarik semuanya ke dalam memori sekaligus

  4. Menggunakan Dapper dengan prosedur tersimpan Oracle yang mengembalikan kursor

  5. Mengapa rlwrap menggemakan apa yang saya ketik dari keyboard?