日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > 数据库 >内容正文

数据库

Oracle、Mysql数据库编程开发基本操作命令语法脚本_基础篇(入门级)

發(fā)布時(shí)間:2024/3/12 数据库 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Oracle、Mysql数据库编程开发基本操作命令语法脚本_基础篇(入门级) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Oracle、Mysql數(shù)據(jù)庫(kù)開(kāi)發(fā)基本操作命令語(yǔ)法腳本_基礎(chǔ)篇(入門級(jí))


文章目錄

  • Oracle、Mysql數(shù)據(jù)庫(kù)開(kāi)發(fā)基本操作命令語(yǔ)法腳本_基礎(chǔ)篇(入門級(jí))
  • 一、數(shù)據(jù)庫(kù)中常用的字段類型
  • 二、操作數(shù)據(jù)庫(kù)的DDL語(yǔ)句
    • 1.創(chuàng)建表語(yǔ)句
    • 2.添加數(shù)據(jù)(增)
    • 3.查詢數(shù)據(jù)(查)
    • 4.刪除數(shù)據(jù)(刪)
    • 5.修改數(shù)據(jù)(改)
  • 三、對(duì)于null值的相關(guān)操作
  • 四、集合查詢
  • 五、模糊查詢
  • 六、時(shí)間相關(guān)的操作
  • 七、對(duì)結(jié)果集進(jìn)行排序顯示
  • 總結(jié)


一、數(shù)據(jù)庫(kù)中常用的字段類型

1、數(shù)值型:
number(p[,s]):表示該類型最多保存 p位數(shù),其中s位為小數(shù)
number(5):表示該類型最多存5位整數(shù)
number(5,2):表示該類型最多存3(5-2)位整數(shù),2位小數(shù)
2、字符型:
定長(zhǎng)字符串:char(n):表示該類型如果填寫,則內(nèi)容長(zhǎng)度一定是n個(gè)字節(jié),如果長(zhǎng)度小于n則會(huì)用空格自動(dòng)補(bǔ)齊到n個(gè)字節(jié),如果超過(guò)n則報(bào)錯(cuò)
變長(zhǎng)字符串:varchar2(n):表示該類型最多存n個(gè)字節(jié),如果內(nèi)容長(zhǎng)度小于n則不會(huì)自動(dòng)補(bǔ)齊,超過(guò)n則報(bào)錯(cuò)
charvarchar2的不同:
1、char為定長(zhǎng)字符串,varchar為變長(zhǎng)字符串
2、char最多存2000個(gè)字節(jié),varchar最多存4000個(gè)字節(jié)
3、根據(jù)char類型的查詢效率要高于varchar類型的查詢效率
3、日期類型:Date

二、操作數(shù)據(jù)庫(kù)的DDL語(yǔ)句

1.創(chuàng)建表語(yǔ)句

create table student (stuno number(2),stuname varchar2(20),sex char(2),height number(3,2),birthday date )

2.添加數(shù)據(jù)(增)

插入 insert into 表名(,....) values(,....)

注意:
值與列對(duì)應(yīng)(類型和個(gè)數(shù)對(duì)應(yīng))

insert into student(stuno,stuname,sex,height,birthday) values(2,'李四','女',1.68,to_date('1996-09-08','yyyy-mm-dd'))

3.查詢數(shù)據(jù)(查)

查詢 select,..... from 數(shù)據(jù)源()

注意:
1、在查詢語(yǔ)句中, select 和 from 必須有 select用于聲明要顯示的列 from 用于聲明數(shù)據(jù)來(lái)源 。
2、如果只有 select from 則表示展示表中的每一條數(shù)據(jù),如果要進(jìn)行條件查詢需要 select …from…where 查詢條件這樣會(huì)展示數(shù)據(jù)源中符合條件的信息。
顯示所有學(xué)生的學(xué)號(hào),姓名,性別

select stuno,stuname,sex from student

查詢所有的女學(xué)生的姓名和生日

select stuname,birthday from student where sex='女'

查詢身高在1.65到1.75之間的學(xué)員信息

select stuno,stuname,sex,height,birthday from student where height>=1.65 and height<=1.75

查詢所有身高高于1.70或者姓名是男的學(xué)員

select stuno,stuname,sex,height,birthday from student where height>=1.7 or sex='男'

4.刪除數(shù)據(jù)(刪)

delete [from] 表名 where 條件:

從表中刪除符合條件的信息
**注意:**刪除語(yǔ)句where是關(guān)鍵,因?yàn)閣here決定了刪除那些信息,如果沒(méi)有where表示清空表中全部數(shù)據(jù)。
刪除 學(xué)號(hào)為 4的學(xué)員信息

delete from student where stuno=4; commit; --提交事務(wù)

5.修改數(shù)據(jù)(改)

update 表名 set=修改的值,=修改的值,.... where 條件

將表中符合條件的對(duì)應(yīng)字段進(jìn)行修改
注意 修改where 是關(guān)鍵,因?yàn)閣here決定了那些條數(shù)據(jù)被修改,如果沒(méi)有where則表示表中所有的數(shù)據(jù)都被修改

select stuno, stuname, sex, height, birthday from student

將1號(hào)學(xué)員的姓名改為張三豐,身高改為1.85,生日改為1900-09-02

update studentset stuname = '張三豐',height = 1.85,birthday = to_date('1900-09-02', 'yyyy-mm-dd')where stuno = 1commit;--提交事務(wù)--rollback;--回滾事務(wù) 用的時(shí)候注釋放開(kāi)即可

三、對(duì)于null值的相關(guān)操作

查詢所有沒(méi)有設(shè)置獎(jiǎng)金的人

select * from emp where comm is null;--查詢comm列狀態(tài)為null的員工信息

將員工姓名為ALLEN的員工獎(jiǎng)金設(shè)置為null

UPDATE EMP set comm = null where ename ='ALLEN';--表中記錄嚴(yán)格區(qū)分大小寫

注意 任何數(shù)據(jù)與null進(jìn)行運(yùn)算結(jié)果依然為null
nvl(列,默認(rèn)值)函數(shù):如果該列為null則返回默認(rèn)值,如果不為null正常返回
顯示所有的員工姓名,工資,獎(jiǎng)金,和月收入(工資+獎(jiǎng)金) (如果獎(jiǎng)金為null則默認(rèn)為0)

select ename ,sal,comm as 獎(jiǎng)金,sal+nvl(comm,0) as 月收入 from emp

四、集合查詢

in (集合)如果列的值等于集合中的某一個(gè)值則表示true
查詢10部門和20部門的員工信息

select * from emp where deptno=10 or deptno=20 select * from emp where deptno in (10,20)

查詢不在10部門也不在20部門工作的員工

select * from emp where deptno != 10 and deptno <> 20

not in(集合) 如果列的值不等于集合中的某個(gè)值,就返回true

select * from emp where deptno not in(10,20)

五、模糊查詢

模糊查詢是對(duì)字符串類型進(jìn)行部分匹配的查詢
模糊查詢的運(yùn)算符為 like
占位符: % ,無(wú)限制占位 即占 >=0
_,占而且只占一位 即占 =1

查詢姓名以A開(kāi)頭的員工信息

select * from emp where ename like 'A%'

查找姓名中有字符 A的員工

select * from emp where ename like '%A%'

查詢姓名以S結(jié)尾的員工

select * from emp where ename like '%S'

查詢姓名中第二個(gè)字母為A的員工信息

select * from emp where ename like '_A%'

六、時(shí)間相關(guān)的操作

查詢1982年之后入職的員工

select * from emp where hiredate>to_date('1982-01-01','yyyy-mm-dd')

to_char(date,格式) 將時(shí)間中指定的屬性轉(zhuǎn)為字符串
查找入職時(shí)間為1987年的員工

select * from emp where to_char(hiredate,'yyyy')='1987'

查找1987-04-19入職的員工

select * from emp where hiredate = to_date('1987-04-19','yyyy-mm-dd') select * from emp where to_char(hiredate,'yyyy-mm-dd') = '1987-04-19'

查找所有在4月份入職的員工

select * from emp where to_char(hiredate,'mm')='04'

七、對(duì)結(jié)果集進(jìn)行排序顯示

語(yǔ)法格式:

select ... from ... [where ] [order by 排序列1,排序列2]

查詢工資大于1000的員工,并按照部門編號(hào)升序排序,如果部門編號(hào)一致則按照工資倒序,如果工資一致按照員工號(hào)倒序

select * from emp where sal>1000 order by deptno asc,sal desc,empno desc

總結(jié)

小結(jié):建議大家根據(jù)業(yè)務(wù)上的需求來(lái)進(jìn)行實(shí)際開(kāi)發(fā)SQL,首先要一步一步去解決問(wèn)題,根據(jù)你要實(shí)現(xiàn)的功能選擇實(shí)現(xiàn)的方式(集合、子查詢、內(nèi)連、外連、函數(shù)),接下來(lái)我會(huì)為大家分享如何用存儲(chǔ)過(guò)程、函數(shù)來(lái)處理業(yè)務(wù)上的邏輯。

總結(jié)

以上是生活随笔為你收集整理的Oracle、Mysql数据库编程开发基本操作命令语法脚本_基础篇(入门级)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。