oracle在where子句中加什麼意思啊

2022-03-06 08:02:43 字數 4760 閱讀 6525

1樓:隨o天

oracle資料庫的連線查詢包括:等值連線、外連線、自連線等。

where子句中加(+) 是外連線的一種。外連線分:左外連線和右外連線。

select * from emp,dept where emp.deptno=dept.deptno(+); --右外連線

select * from emp,dept where emp.deptno(+)=dept.deptno; --左外連線

帶(+)側的資料即使不存在,另一側的資料依然可以顯示出來。

2樓:匿名使用者

select a.* ,b.* from a,b where a.id = b.id(+)

相當於select a.*,b.* from a left join b on a.id = b.id

3樓:堇生活

外連線,有左外連線和右外連線之分,看是加在條件的哪一頭了

4樓:

在什麼地方寫的,是sql裡嗎?

應該在某種語言中,用於連線串吧

oracle的sql語句中的(+)是幹什麼用的?

5樓:匿名使用者

oracle特有的左外聯書寫方式,當然你也可以用傳統的通用的左外聯,比如給你舉個例子

select s.name as 姓名,g.grade as 分數,c.cid as 課程名

from tbl_student s left outer join tbl_grade g on s.studentid=g.sid left outer join tbl_class c on g.

cid=c.classid

它跟下面等價

select s.name as 姓名,g.grade as 分數,c.classname as 課程名

from tbl_student s,tbl_grade g,tbl_class c

where (s.studentid=g.sid(+)) and (g.cid=c.classid(+))

6樓:匿名使用者

這個(+)是資料連線的意思,用於表外連結,外連結舉例:select a.ename,b.

ename from emp a,emp b where a.mgr=b.empno(+);--外連線 內表或倆表比較有+端強制顯示空結果

select a.ename as ben,b.ename as shangji from emp a,emp b where a.

mgr=b.empno(+) and a.hiredate

hiredate;

select a.dname,b.* from dept a,emp b where a.deptno=b.deptno(+) order by b.empno;

oracle 當中,(+)是什麼意思啊?

7樓:黑馬程式設計師

1 oracle是資料庫的意思

2 sql是運算元據庫的語句,資料庫有很多公司做的,比如常見的mysql oracle資料,這是兩個不同公司開發的資料庫。 咱們作為使用資料庫的人,要操作這個資料庫,就需要學習sql。

打個比方吧 :oracel 和mysql就好比寶馬和賓士車,這兩個車是由不通的公司生產的,作為咱們使用者,也就是買車的人,肯定要學會開車了,這個開車就好比sql語句,就是為了操作車的 。

8樓:匿名使用者

select

a.id, b.idd

from

a, b

where

a.id(+)=b.idd

等價於select

a.id, b.idd

from

a right outer join b on ( a.id=b.idd)

sql> select * from a;

id val

---------- ----------1 a1

2 a2

sql> select * from b;

idd val

---------- ----------1 b1

3 b3

sql> select

2 a.id, b.idd

3 from

4 a, b

5 where

6 a.id(+)=b.idd;

id idd

---------- ----------1 1

3sql> select

2 a.id, b.idd

3 from

4 a right outer join b on ( a.id=b.idd);

id idd

---------- ----------1 1

3意思是 兩表關聯的時候,

b 表的資料, 全部檢索出來。

a表的資料,則是在b表有相對應的資料的情況下,才檢索出來。

9樓:匿名使用者

(+)是outer join 的意思,能將匹配備件中有空值的記錄也顯示出來,如果沒有這個符號,則不會顯示條件中包含空值的結果

10樓:匿名使用者

這是左連線,當a表中的欄位名稱和b表欄位名稱相同時取b表所有欄位。並且相同的欄位都展示

11樓:

+個的1思是1+1=2

如何在oracle的where語句中新增條件判斷

12樓:匿名使用者

用?name1=2>1?小王:小李

select * from student where name=name1;

13樓:賓士

*******************

plsql寫法:

*******************

1、在sqlplus 中定義一個 遊標變數var p_cursor refcursor2、寫一個plsql過程塊

declare

sql_str varchar(1000) := ' ';

begin

if 2 > 1 then

sql_str := 'select * from student where name=''小王''';

else

sql_str := 'select * from student where name=''小李''';

end if;

open :p_cursor for sql_str;

end;

3、在sqlplus中列印輸出結果

print p_cursor;

***************

補充:有點錯誤修正了下

***************

---以上,希望對你有所幫助。

oracle中sql語句中where子句可不可以動態新增

14樓:

不傳入,程式給個預設值

或者你根據 傳入引數 拼sql

15樓:學無止境分享無限

可以,執行的時候只執行給出的就可以

oracle中的欄位後面有加號是什麼意思

16樓:匿名使用者

表的連線,你查查oracle的左聯和右聯吧,記不清是左聯還是右聯了。

oracle 中where條件後如何新增判斷語句?

17樓:匿名使用者

直接加--------------------------

那你寫兩條sql語句不就得了麼。。

18樓:拾_忔

你想根據什麼條件選擇,where後就加什麼條件

19樓:無辜的悲傷鬼

你想判斷什麼,能給個具體點的例子麼

20樓:匿名使用者

where不就是判斷麼

oracle sql 語句中where條件中 1=1 是什麼意思

21樓:隨緣_莫隨緣

是為了後面附加and ...方便程式邏輯處理用的,要不然你就得稍微複雜一點兒處理:

有where條件。。。

沒有where條件。。。

22樓:匿名使用者

1=1 是永恆成立的,意思無條件的,也就是說在sql語句裡有沒有這個1=1都可以。

這個1=1常用於應用程式根據使用者選擇項的不同拼湊where條件時用的。

如:web介面查詢使用者的資訊,where預設為1=1,這樣使用者即使不選擇任何條件,sql查詢也不會出錯。如果使用者選擇了姓名,那麼where變成了where 1=1 and 姓名='使用者輸入的姓名',如果還選擇了其他的條件,就不斷在where 條件後追加 and語句就行了。

如果不用1=1的話,每加一個條件,都要判斷前面有沒有where 條件,如果沒有就寫where ...,有就寫and語句,因此此時用1=1可以簡化了應用程式的複雜度

23樓:匿名使用者

意思是永遠為真,這樣可以返回所有表資料。

在linucentos中安裝oracle資料庫都需要哪些安裝

1 安裝包裡都有安裝指南 2 the following packages or later versions must be installed binutils 2.17.50.0.6 compat libstdc 33 3.2.3compat libstdc 33 3.2.3 32 bit e...

too在否定句中為,too在否定句中改為什麼

either,也不 i don t like it i don t like it,either.either 對上面那個人說的表示認同的意思 too在否定句中改為什麼 在否定句中用either,放於句尾 if you don t go,i won t either.如果你不去,我也不去.我想請問您...

怎樣在句中判斷詞的詞性,怎樣在句中判斷一個詞的詞性

名詞表示人或事物名稱的詞叫名詞。下邊劃線的詞分別表示不同人或事物的名稱。中間掛著一塊匾道 三味書屋 匾下面是一幅畫,畫著一隻很肥大的梅花鹿伏 在古樹下。沒有孔子牌位,我們便對著那匾和鹿行禮。這是閏土的父親所傳授的方法。正午習字,晚上對課。表示人名的如 孔子 閏土 父親 表示處所的如 三味書屋 表示時...