1. 程式人生 > >Sql語句中IN等方面的用法

Sql語句中IN等方面的用法

導讀:
select * from txt1
select * from txt2
select * from txt1 where name in (select name from txt2 where chk = 0)
select * from txt1 where name not in (select name from txt2 where chk = 0)
select * from txt1 inner join txt2 on txt1.name = txt2.name
select * from txt1 left join txt2 on txt1.name = txt2.name
select * from txt1 right join txt2 on txt1.name = txt2.name
select * from txt1,txt2 where txt1.name = txt2.name Order By txt2.ID Desc
select Txt1.name,Sum(Txt1.Sumint) from txt1,txt2 where txt1.name =txt2.name Group by txt1.name
select count(Txt1.name),sum(sumint) from txt1,txt2 where txt1.name =txt2.name having sum(sumint)<10
select count(Txt1.name),sum(sumint) from txt1,txt2 where txt1.name =txt2.name having Sum(sumint) >50
select * from txt1,txt2 where txt1.name <>txt2.name Order by Txt1.Name compute Sum(sumint) by txt1.name
insert into txt3 select name,Sumint from txt1
In:等值連線,用來查詢多表相同欄位的記錄
Not In:非等值連線,用來查詢不存在的記錄
Inner join:內連線,主要用來查詢都符合條件的記錄
Left join:左連線,主要用來查詢左邊有,右邊沒有的用空值表達
Right join:右連線,主要用來查詢右邊有,左邊沒有的用空值表達
Order By:升序 Asc 降序 Desc
Group By:分組排序 按欄位分組(如按班級分),使用的都要有集合函式存在
Having :對分組條件進行判斷,使用都要確保每個欄位都要用集合函式
COMPUTE BY:子句使您得以用同一 SELECT 語句既檢視明細行,又檢視彙總行。可以計運算元組的彙總值,也可以計算整個結果集的彙總值。
行聚合函式名稱;例如,SUM、AVG、MIN、MAX 或 COUNT
insert into:主要把查詢的語句插入到新表。
txt1表的資料
ID Name SumInt
1 張三 55
2 李四 85
3 王五 85
4 趙六 855
txt2表的資料
ID Name Chk
1 張三 0
2 李四1 1
3 王五 0
4 趙六 0

本文轉自
http://hi.baidu.com/qzrc/blog/item/ff7ad688bc548394a4c272ce.html

相關推薦

Sql語句IN方面用法

導讀: select * from txt1 select * from txt2 select * from txt1 where name in (select name from txt2 where chk = 0) select * from txt1 where

Sql語句IN和exists的區別及應用

應用場景 將不 集中 pre 代碼 根據 gif 效率 .cn   表展示     首先,查詢中涉及到的兩個表,一個user和一個order表,具體表的內容如下:     user表:          order表:        in     確定給定的值是否與子查

封裝sql語句in限制查詢個數的方法

sel rim () each tar blog and style months /* * 此方法用於每天淩晨取前一天的回滾用戶賬號 */ public function getRollBackAccount($startTime

sql語句select……as的用法

inf 語句 技術分享 png info select lec src ima sql語句中select……as的用法

面試被問之-----sql優化in與exists的區別 Mysql in or exists not exists not in區別 (網路整理) Sql語句IN和exists的區別及應用 [筆記] SQL效能優化 - 避免使用 IN 和 NOT IN

曾經一次去面試,被問及in與exists的區別,記得當時是這麼回答的:''in後面接子查詢或者(xx,xx,xx,,,),exists後面需要一個true或者false的結果",當然這麼說也不算錯,但別人想聽的是sql優化相關,肯定是效率的問題,只是那個時候確實不知道它們在sql優化上的區別,只知道用in會進

實習工作Sql 語句 IN 和 EXISTS 的心得體會

在學校時做專案時資料庫表少而且資料量也不大,做子查詢的時候一般沒有什麼區別,所以一直以來沒有注意過這個問題。 如今工作後,讓我實現政府執法人員執政編號的修改,用IN做子查詢時發現效率特別慢,最後發現是因為IN語句中查詢順序不同導致的。 IN 語句:只執行一次   &n

sql語句in關鍵字提示查詢效能

這幾天一個模組即將結束,便開始進行一些優化,以提升效能。發現一個sql語句的查詢速度是6秒,這明顯讓使用者等待過長。     語句其實挺簡單的,上學的時候經常這麼寫,而且記得好多教科書中也是這麼寫的。 簡要形式: SELECT t1.field1,t1.f

mybatis的xmlsql語句in的寫法

這裡使用 foreach標籤 <foreach  item="item" collection="listTag" index="index"  open="(" separator="," close=")"> #{item} </foreach>

SQL語句 INNER JOIN的用法

得出 sql語句 手機 語句 mage image src 就是 uid 一、SQL語句中 INNER JOIN的用法?   1.INNER JOIN的作用?   可以在兩個或者更多的表中獲取結果,得出一張新表。   表一 car 購物車      表二

關於mysql的sql語句` `字元的用法 關鍵字處理

SELECT * FROM   `table`   WHERE `from` = 'abc' ; 當你的資料表的表名(上面的表名是table)或者欄位名字(上面的欄位名是from)是關鍵字的時候,這時就會有衝突了,mysql的轉移字元是  &

sql語句in 、not in 、exists、not exists 詳細用法說明和差別----not in失效

來看下面這樣一條SQL語句: select * from student where 20 < all (select score from student) 其中,(select score from student)返回的是所有分數的記錄集 只有當記錄集中的所有分數都大於20後,才會執行前面的SQ

SQL語句exists和in的區別

splay 比較 server for target 空值 不存在 依次 第一個 轉自https://www.cnblogs.com/liyasong/p/sql_in_exists.html 和 http://blog.csdn.net/lick4050312/artic

SQL語句----刪除表數據drop、truncate和delete的用法

ali index invalid 表結構 back 標識 -- 等保 convert 一、SQL中的語法 1、drop table 表名稱 eg: drop table dbo.Sys_Test 2、trunca

SQL語句find_in_set、like、in的區別及使用方法

mic 基本語法 str 字段名 fix dsm 變量 com 查詢 摘自 https://blog.csdn.net/sunny1660/article/details/78613000 find_in_set(str,strlist)函數 str 要查

MySQL一個sql語句包含in優化問題

col eat pre pan span mysq fin limit clas 第一版sql: SELECT module.id, module.module_name, module.module_code `module` where 92 IN (module

sql語句刪除表 drop、truncate和delete的用法

drop table xx --xx是資料表的名字 作用:刪除內容和定義,釋放空間. 後果:整個表刪除,內容被刪除 truncate table xx 作用:刪除內容,釋放空間但不刪除定義.與drop不同的是隻清空表資料,不刪除表結構 注意:不可刪除行資料,只能全表刪除

SQL語句not in 和not exist的區別

in和exists in 是把外表和內表作hash 連線,而exists是對外表作loop迴圈,每次loop迴圈再對內表進行查詢。一直以來認為exists比in效率高的說法是不準確的。 如果查詢的兩個表大小相當,那麼用in和exists差別不大。 如果兩個表中一個較小,一個是

SQLIN和EXISTS用法的區別

結論 1. in()適合B表比A表資料小的情況 2. exists()適合B表比A表資料大的情況 當A表資料與B表資料一樣大時,in與exists效率差不多,可任選一個使用. select * from A where id in(select id fro

SQL語句的TOP(expression) [PERCENT] [WITH TIES] 用法

   TOP(expression) [PERCENT] [WITH TIES]   expression : 指定返回行數的數值表示式。如果指定了PERCENT,則expression預設轉換為FLOAT值,否則,他預設為bigint值。 PERCENT:返回結果中前e

SQL語句exists和in的區別?

查詢中涉及到的兩個表,一個books和一個borrow表,具體表的內容如下: 書單(books)表: 借書表borrow IN 一、確定給定的值是否與子查詢或列表中的值相匹配。in在查詢的時候,首先查詢子查詢的表,然後將內表和外表做一個笛卡爾