我需要比較兩列,兩者都具有SYSDATE的值,但這個如何平衡兩個表的兩列,均具有SYSDATE的值
select count(*) from (
(select col from tab1)
minus
(select col from tab2)) --
給出1,但我希望它是0
讓我進一步明確:
create table tab1 (col date)
-- Can the datatype of `col` be something else
-- rather than `date` so that when `SYSDATE`
-- gets inserted to it, I get only `10-MAY-17`
-- rather than the date along with time?
-- I have control on this create statement,
-- I can create the table as I wish to.
insert into tab1 values (sysdate)
-- I have no control on this,
-- this is system generated .
create table tab2 (col date)
-- I have control on it.
-- I can modify it.
insert into tab2(col) values (sysdate)
-- I have control on it to change it
請讓我知道,如果問題仍不清楚。 謝謝
您使用的是什麼SQL後端?並非每個SQL實現都支持MINUS運算符。甲骨文我知道,但SQL Server,PostgreSQL和SQLite使用EXCEPT運算符。 – ShaneNal
你不清楚。數據類型與什麼有什麼關係?希望這兩列有DATE數據類型,不應該改變。這裏有什麼問題? SYSDATE被插入到tab1中,並且應該在tab2中插入相同的值,但是它不同,因爲SYSDATE稍後被稱爲秒的小數部分?不要將SYSDATE插入到tab2中,請從tab1插入值。 – mathguy
@ShaneNal - 您是否有特別的理由相信OP對帖子進行了錯誤標記?我看到Oracle和PLSQL,以及我認爲特定於Oracle的名稱SYSDATE。爲什麼懷疑? – mathguy