insert into 語句用於向**中插入新的行。
insert into 表名稱 values (值1, 值2,....)我們也可以指定所要插入資料的列:
insert into table_name (列1, 列2,...) values (值1, 值2,....)
lastname
firstname
address
city
carter
thomas
changan street
beijing
insert into persons values ('gates', 'bill', 'xuanwumen 10', 'beijing')lastname
firstname
address
city
carter
thomas
changan street
beijing
gates
bill
xuanwumen 10
beijing
lastname
firstname
address
city
carter
thomas
changan street
beijing
gates
bill
xuanwumen 10
beijing
insert into persons (lastname, address) values ('wilson', 'champs-elysees')lastname
firstname
address
city
carter
thomas
changan street
beijing
gates
bill
xuanwumen 10
beijing
wilson
champs-elysees
update 語句用於修改表中的資料。
update 表名稱 set 列名稱 = 新值 where 列名稱 = 某值
lastname
firstname
address
city
gates
bill
xuanwumen 10
beijing
wilson
champs-elysees
我們為 lastname 是 "wilson" 的人新增 firstname:
update person set firstname = 'fred' where lastname = 'wilson'lastname
firstname
address
city
gates
bill
xuanwumen 10
beijing
wilson
fred
champs-elysees
我們會修改位址(address),並新增城市名稱(city):
update person set address = 'zhongshan 23', city = 'nanjing'lastnamewhere lastname = 'wilson'
firstname
address
city
gates
bill
xuanwumen 10
beijing
wilson
fred
zhongshan 23
nanjing
delete 語句用於刪除表中的行。
delete from 表名稱 where 列名稱 = 值
lastname
firstname
address
city
gates
bill
xuanwumen 10
beijing
wilson
fred
zhongshan 23
nanjing
"fred wilson" 會被刪除:
delete from person where lastname = 'wilson'lastname
firstname
address
city
gates
bill
xuanwumen 10
beijing
可以在不刪除表的情況下刪除所有的行。這意味著表的結構、屬性和索引都是完整的:
delete from table_name或者:
delete * from table_name
group by 語句用於結合合計函式,根據乙個或多個列對結果集進行分組。
select column_name, aggregate_function(column_name)from table_name
where column_name operator value
group by column_name
我們擁有下面這個 "orders" 表:
o_id
orderdate
orderprice
customer
12008/12/29
1000
bush
22008/11/23
1600
carter
32008/10/05
700bush
42008/09/28
300bush
52008/08/06
2000
adams
62008/07/21
100carter
現在,我們希望查詢每個客戶的總金額(總訂單)。
我們想要使用 group by 語句對客戶進行組合。
我們使用下列 sql 語句:
select customer,sum(orderprice) from orders結果集類似這樣:group by customer
customer
sum(orderprice)
bush
2000
carter
1700
adams
2000
很棒吧,對不對?
讓我們看一下如果省略 group by 會出現什麼情況:
select customer,sum(orderprice) from orders結果集類似這樣:
customer
sum(orderprice)
bush
5700
carter
5700
bush
5700
bush
5700
adams
5700
carter
5700
上面的結果集不是我們需要的。
那麼為什麼不能使用上面這條 select 語句呢?解釋如下:上面的 select 語句指定了兩列(customer 和 sum(orderprice))。"sum(orderprice)" 返回乙個單獨的值("orderprice" 列的總計),而 "customer" 返回 6 個值(每個值對應 "orders" 表中的每一行)。因此,我們得不到正確的結果。不過,您已經看到了,group by 語句解決了這個問題。
我們也可以對乙個以上的列應用 group by 語句,就像這樣:
select customer,orderdate,sum(orderprice) from ordersgroup by customer,orderdate
SQL備忘記錄
一 with as的含義 with as短語,也叫做子查詢部分 subquery factoring 可以讓你做很多事情,定義乙個sql片斷,該sql片斷會被整個sql語句所用到。有的時候,是為了讓sql語句的可讀性更高些,也有可能是在union all的不同部分,作為提供資料的部分。特別對於uni...
sql備忘記錄
spark sql 當前日期 current date 顯示當前日期 年月日時分秒 year,month,day,hour,minute,second 例 year 2018 09 20 2018 第幾周,第幾天 weekofyear,dayofyear weekofyear x xx xx mys...
C 雜記 陣列的語法我總忘記 記之
宣告乙個陣列 double mylist 10 宣告多個陣列 double mylist 10 mylist2 10 宣告陣列時,中括號內的陣列必須為常量。mylist 0 6 當乙個陣列宣告後還沒有賦值,元素內容是任意的。double mylist 4 double mylist 中括號中的數字是...