sql="select * from 數據表 where 字段名=字段值 order by 字段名 [desc]"
sql="select * from 數據表 where 字段名 like %字段值% order by 字段名
[desc]"
sql="select top 10 * from 數據表 where 字段名 order by 字段名 [desc]"
sql="select * from 數據表 where 字段名 in (值 1,值 2,值 3)"
sql="select * from 數據表 where 字段名 between 值 1 and 值 2"
select *(列名) from table_name(表名) where column_name operator value
ex:(宿主)
select * from stock_information where stockid = str(nid)
stockname = 'str_name'
stockname like '% find this %'
stockname like '[a-zA-Z]%' --------- ([]指定值的范圍)
stockname like '[^F-M]%' --------- (^排除指定范圍)
--------- 只能在使用 like 關鍵字的 where 子句中使用通配符)
or stockpath = 'stock_path'
or stocknumber < 1000
and stockindex = 24
not stock*** = 'man'
stocknumber between 20 and 100
stocknumber in(10,20,30)
order by stockid desc(asc) --------- 排序,desc-降序,asc-升序
order by 1,2 --------- by 列號
stockname = (select stockname from stock_information where stockid = 4)
--------- 子查詢
--------- 除非能確保內層 select 只返回一個行的值,
--------- 否則應在外層 where 子句中用一個 in 限定符
select distinct column_name form table_name --------- distinct 指定檢索獨有的列值,
不重復
select stocknumber ,"stocknumber + 10" = stocknumber + 10 from table_name
select stockname , "stocknumber" = count(*) from table_name group by stockname
--------- group by 將表按行分組,指定列中有相同的值
having count(*) = 2 --------- having 選定指定的組
select * from table1, table2 where table1.id *= table2.id -------- 左外部連接,table1 中有的而 table2 中沒有得
以 null 表示
table1.id =* table2.id -------- 右外部連接
select stockname from table1
union [all] ----- union 合并查詢結果集,all-保留重復行
select stockname from table2
sql="insert into 數據表 (字段 1,字段 2,字段 3 ) valuess (值 1,值 2,值 3 )"
sql="insert into 目標數據表 select * from 源數據表" (把源數據表的記錄添加到
目標數據表)
insert into table_name (Stock_name,Stock_number) value ("xxx","xxxx")
value (select Stockname , Stocknumber from Stock_table2)---value 為 select 語句
sql="update 數據表 set 字段名=字段值 where 條件表達式"
sql="update 數據表 set 字段 1=值 1,字段 2=值 2 字段 n=值 n where 條件表
達式"
update table_name set Stockname = "xxx" [where Stockid = 3]
Stockname = default
http://hi.baidu.com/ttcc2009
Stockname = null
Stocknumber = Stockname + 4
sql="delete from 數據表 where 條件表達式"
sql="delete from 數據表" (將數據表所有記錄刪除)
delete from table_name where Stockid = 3
truncate table_name ----------- 刪除表中所有行,仍保持表的完整性
drop table table_name --------------- 完全刪除表
select *(列名) from table_name(表名) where column_name operator value
ex:(宿主)
select * from stock_information where stockid = str(nid)
stockname = 'str_name'
stockname like '% find this %'
stockname like '[a-zA-Z]%' --------- ([]指定值的范圍)
stockname like '[^F-M]%' --------- (^排除指定范圍)
--------- 只能在使用 like 關鍵字的 where 子句中使用通配符)
or stockpath = 'stock_path'
or stocknumber < 1000
and stockindex = 24
not stock*** = 'man'
stocknumber between 20 and 100
stocknumber in(10,20,30)
order by stockid desc(asc) --------- 排序,desc-降序,asc-升序
order by 1,2 --------- by 列號
stockname = (select stockname from stock_information where stockid = 4)
--------- 子查詢
--------- 除非能確保內層 select 只返回一個行的值,
--------- 否則應在外層 where 子句中用一個 in 限定符
select distinct column_name form table_name --------- distinct 指定檢索獨有的列值,
不重復
select stocknumber ,"stocknumber + 10" = stocknumber + 10 from table_name
select stockname , "stocknumber" = count(*) from table_name group by stockname
--------- group by 將表按行分組,指定列中有相同的值
having count(*) = 2 --------- having 選定指定的組
select * from table1, table2 where table1.id *= table2.id -------- 左外部連接,table1 中有的而 table2 中沒有得
以 null 表示
table1.id =* table2.id -------- 右外部連接
select stockname from table1
union [all] ----- union 合并查詢結果集,all-保留重復行
select stockname from table2
sql="insert into 數據表 (字段 1,字段 2,字段 3 ) valuess (值 1,值 2,值 3 )"
sql="insert into 目標數據表 select * from 源數據表" (把源數據表的記錄添加到
目標數據表)
insert into table_name (Stock_name,Stock_number) value ("xxx","xxxx")
value (select Stockname , Stocknumber from Stock_table2)---value 為 select 語句
sql="update 數據表 set 字段名=字段值 where 條件表達式"
sql="update 數據表 set 字段 1=值 1,字段 2=值 2 字段 n=值 n where 條件表
達式"
update table_name set Stockname = "xxx" [where Stockid = 3]
Stockname = default
http://hi.baidu.com/ttcc2009
Stockname = null
Stocknumber = Stockname + 4
IN 操作符允許我們在 WHERE 子句中規定多個值。
SQL IN 語法
SELECT column_name(s) FROM table_name WHERE column_name IN (value1,value2,...)
AND 和 OR 可在 WHERE 子語句中把兩個或多個條件結合起來。
如果第一個條件和第二個條件都成立,則 AND 運算符顯示一條記錄。
如果第一個條件和第二個條件中只要有一個成立,則 OR 運算符顯示一條記錄。
如需有條件地從表中選取數據,可將 WHERE 子句添加到 SELECT 語句。
SELECT 列名稱 FROM 表名稱 WHERE 列 運算符 值
操作符 | 描述 |
= | 等于 |
<> | 不等于 |
> | 大于 |
< | 小于 |
>= | 大于等于 |
<= | 小于等于 |
between | 在某個范圍內 |
like | 搜索某種范圍 |
alter table database.owner.table_name add column_name char(2) null .....
sp_help table_name ---- 顯示表已有特征
create table table_name (name char(20), age smallint, lname varchar(30))
insert into table_name select ......... ----- 實現刪除列的方法(創建新表)
alter table table_name drop constraint Stockname_default ---- 刪除 Stockname 的
default 約束
CREATE TABLE 表名稱 ( 列名稱1 數據類型, 列名稱2 數據類型, 列名稱3 數據類型, ....)
----統計函數----
AVG(字段名) 得出一個表格欄平均值
COUNT(*|字段名) 對數據行數的統計或對某一欄有值的數據行數統計
MAX(字段名) 取得一個表格欄最大的值
MIN(字段名) 取得一個表格欄最小的值
SUM(字段名) 把數據欄的值相加
引用以上函數的方法:
sql="select sum(字段名) as 別名 from 數據表 where 條件表達式"
set rs=conn.excute(sql)
用 rs("別名") 獲取統的計值,其它函數運用同上。
--AVG
use pangu
select avg(e_wage) as dept_avgWage
from employee
group by dept_id
--MAX
--求工資最高的員工姓名
use pangu
select e_name
from employee
where e_wage =
(select max(e_wage)
from employee)
--STDEV()
--STDEV()函數返回表達式中所有數據的標準差
--STDEVP()
--STDEVP()函數返回總體標準差
--VAR()
--VAR()函數返回表達式中所有值的統計變異數
--VARP()
--VARP()函數返回總體變異數
----算術函數----
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。