unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
不管了 敗下去
_____________________________________________________
文/邱威傑 froggy_chiu@hmg.com.tw
如果你是個常常參加記者會的媒體工作者,或者是其他常常需要離開辦公室去開會或跑客戶的業務員,你通常很難跟老闆證明自己到底在忙什麼。畢竟你離開了辦公室,也可能只是到35元的咖啡廳混過一個下午。看著休閒餐飲店裡坐著一堆穿西裝打領帶的看報族,你叫老闆怎麼不擔心?最好的解決辦法就是把你的行事曆分享出來,讓老闆知道你今天的行蹤,讓你的老闆瞭解你行事曆上落落長的辛苦。
來自 Engadget 中文版 Flow Yu 著
嫌 ADSL 網路傳輸速度不夠快嗎?那還不快點跟著南非這家 IT 公司一同轉換跑道,改用「千年傳統,全新感受」的資料傳輸系統:飛鴿傳數據。
[引用文]http://taichitech.blogspot.com/2009/01/sqlexistin.html
in 和 exists也是很好區別的.
in 是一個集合運算符.
a in {a,c,d,s,d....}
這個運算中,前面是一個元素,後面是一個集合,集合中的元素類型是和前面的元素一樣的.
而exists是一個存在判斷,如果後面的查詢中有結果,則exists為真,否則為假.
in 運算用在語句中,它後面帶的select 一定是選一個字段,而不是select *.
比如說你要判斷某班是否存在一個名為"小明"的學生,你可以用in 運算:
"小明" in (select sname from student)
這樣(select sname from student) 返回的是一個全班姓名的集合,in用於判斷"小明"是否為此集合中的一個數據;
同時,你也可以用exists語句:
exists (select * from student where sname="小明")
這兩個涵數是差不多的, 但是由於優化方案的不同, 通常NOT EXISTS要比NOT IN 要快, 因為NOT EXISTS可以使用結合算法而NOT IN 就不行了,而EXISTS則不如IN快, 因為這時候IN可能更多的使用結合算法.
select * from 表A where exists(select * from 表B where 表B.id=表A.id)
這句相當於
select * from 表A where id in (select id from 表B)
對於表A的每一條數據,都執行select * from 表B where 表B.id=表A.id的存在性判斷,如果表B中存在表A當前行相同的id,則exists為真,該行顯示,否則不顯示
比較使用 EXISTS 和 IN 的查詢
這個例子比較了兩個語義類似的查詢。第一個查詢使用 EXISTS 而第二個查詢使用 IN。注意兩個查詢返回相同的信息。
USE pubs
GO
SELECT DISTINCT pub_name
FROM publishers
WHERE EXISTS
(SELECT *
FROM titles
WHERE pub_id = publishers.pub_id
AND type = 'business')
GO