本篇內(nèi)容主要講解“javascript是不是sql語(yǔ)言”,感興趣的朋友不妨來看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“javascript是不是sql語(yǔ)言”吧!
發(fā)展壯大離不開廣大客戶長(zhǎng)期以來的信賴與支持,我們將始終秉承“誠(chéng)信為本、服務(wù)至上”的服務(wù)理念,堅(jiān)持“二合一”的優(yōu)良服務(wù)模式,真誠(chéng)服務(wù)每家企業(yè),認(rèn)真做好每個(gè)細(xì)節(jié),不斷完善自我,成就企業(yè),實(shí)現(xiàn)共贏。行業(yè)涉及塔吊租賃等,在網(wǎng)站建設(shè)、全網(wǎng)營(yíng)銷推廣、WAP手機(jī)網(wǎng)站、VI設(shè)計(jì)、軟件開發(fā)等項(xiàng)目上具有豐富的設(shè)計(jì)經(jīng)驗(yàn)。
javascript不是sql語(yǔ)言。JavaScript是一種基于原型編程、多范式的動(dòng)態(tài)腳本語(yǔ)言,常用來為網(wǎng)頁(yè)添加各式各樣的動(dòng)態(tài)功能,為用戶提供更流暢美觀的瀏覽效果;而SQL是一種數(shù)據(jù)庫(kù)查詢和程序設(shè)計(jì)語(yǔ)言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)。
本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5&&MySQL8版、Dell G3電腦。
javascript不是sql語(yǔ)言。javascript和sql語(yǔ)言是兩種不同的語(yǔ)言,且用處也不一樣。
什么是javascript?
JavaScript(簡(jiǎn)稱“JS”) 是一種具有函數(shù)優(yōu)先的輕量級(jí),解釋型或即時(shí)編譯型的編程語(yǔ)言。雖然它是作為開發(fā)Web頁(yè)面的腳本語(yǔ)言而出名,但是它也被用到了很多非瀏覽器環(huán)境中,JavaScript 基于原型編程、多范式的動(dòng)態(tài)腳本語(yǔ)言,并且支持面向?qū)ο?、命令式和聲明式(如函?shù)式編程)風(fēng)格。
JavaScript是一種屬于網(wǎng)絡(luò)的高級(jí)腳本語(yǔ)言,已經(jīng)被廣泛用于Web應(yīng)用開發(fā),常用來為網(wǎng)頁(yè)添加各式各樣的動(dòng)態(tài)功能,為用戶提供更流暢美觀的瀏覽效果。通常JavaScript腳本是通過嵌入在HTML中來實(shí)現(xiàn)自身的功能的。
主要功能
1.嵌入動(dòng)態(tài)文本于HTML頁(yè)面。
2.對(duì)瀏覽器事件做出響應(yīng)。
3.讀寫HTML元素。
4.在數(shù)據(jù)被提交到服務(wù)器之前驗(yàn)證數(shù)據(jù)。
5.檢測(cè)訪客的瀏覽器信息??刂芻ookies,包括創(chuàng)建和修改等。
6.基于Node.js技術(shù)進(jìn)行服務(wù)器端編程。
JavaScript的使用方式
script的type屬性可以不寫,如果要寫的話使用
type="text/javascript"
方式1:js的內(nèi)部方式
<script> //單行注釋 /*多行注釋*/ //在js常見的函數(shù) //向?yàn)g覽器打印內(nèi)容,類似于Java中的控制臺(tái)輸出語(yǔ)句 document.write("hello,JavaScript我來了!") ; //還可以在瀏覽器中控制臺(tái)中打印內(nèi)容 console.log("hello,JavaScript我來了") ; //在瀏覽中彈出一個(gè)提示框 //window對(duì)象是瀏覽器中頂級(jí)對(duì)象,可以省略不寫! //window.alert("helloworld") ; //簡(jiǎn)寫為: alert("helloworld") ; </script> -->
方式2:外部方式
實(shí)際開發(fā)中(前端開發(fā)人員開發(fā)使用的!)
需要在js文件夾中單獨(dú)創(chuàng)建一個(gè)后綴為.js的文件
書寫js代碼,在當(dāng)前html頁(yè)面中將js文件導(dǎo)入即可!
導(dǎo)入外部js文件
<script src="js/01.js"></script>
什么是SQL?
結(jié)構(gòu)化查詢語(yǔ)言(Structured Query Language)簡(jiǎn)稱SQL,是一種特殊目的的編程語(yǔ)言,是一種數(shù)據(jù)庫(kù)查詢和程序設(shè)計(jì)語(yǔ)言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)。
SQL從功能上可以分為3部分:數(shù)據(jù)定義、數(shù)據(jù)操縱和數(shù)據(jù)控制。
1、SQL數(shù)據(jù)定義功能:能夠定義數(shù)據(jù)庫(kù)的三級(jí)模式結(jié)構(gòu),即外模式、全局模式和內(nèi)模式結(jié)構(gòu)。在SQL中,外模式又叫做視圖(View),全局模式簡(jiǎn)稱模式(Schema),內(nèi)模式由系統(tǒng)根據(jù)數(shù)據(jù)庫(kù)模式自動(dòng)實(shí)現(xiàn),一般無(wú)需用戶過問。
2、SQL數(shù)據(jù)操縱功能:包括對(duì)基本表和視圖的數(shù)據(jù)插入、刪除和修改,特別是具有很強(qiáng)的數(shù)據(jù)查詢功能。
3、SQL的數(shù)據(jù)控制功能:主要是對(duì)用戶的訪問權(quán)限加以控制,以保證系統(tǒng)的安全性。
DDL語(yǔ)句: 數(shù)據(jù)庫(kù)操作語(yǔ)句
數(shù)據(jù)庫(kù)的DDL語(yǔ)句(數(shù)據(jù)庫(kù)的定義語(yǔ)句)之庫(kù)的操作
-- :普通注釋 當(dāng)行注釋 /* mysql的多行注釋*/ #特殊注釋 -- 查詢當(dāng)前mysql中自帶的所有庫(kù)有哪些 庫(kù)在我們電腦磁盤上----> 文件夾 mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | mysql的默認(rèn)配置庫(kù) | mysql | 有user表 (管理員用戶表) :root用戶就在這個(gè)庫(kù)中 | performance_schema | mysql其他庫(kù)(性能相關(guān)) | test | 測(cè)試庫(kù),但是不用它,自己創(chuàng)建新的庫(kù) +--------------------+ 4 rows in set (0.00 sec) -- 創(chuàng)建庫(kù) -- create database 庫(kù)名; mysql> create database myEE_2203 ; Query OK, 1 row affected (0.00 sec) mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | myee_2203 | | mysql | | performance_schema | | test | +--------------------+ 5 rows in set (0.00 sec) -- create database if not exists 庫(kù)名; mysql> create database if not exists ee2203; Query OK, 1 row affected (0.00 sec) mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | ee2203 | | myee_2203 | | mysql | | performance_schema | | test | +--------------------+ 6 rows in set (0.00 sec) -- 查詢創(chuàng)建庫(kù)的字符集 -- show create database 庫(kù)名; mysql> show create database myee_2203; +-----------+--------------------------------------------------------------------+ | Database | Create Database | +-----------+--------------------------------------------------------------------+ | myee_2203 | CREATE DATABASE `myee_2203` /*!40100 DEFAULT CHARACTER SET utf8 */ | +-----------+--------------------------------------------------------------------+ 1 row in set (0.00 sec) -- 修改庫(kù)的字符集 -- alter database 庫(kù)名 default character set 字符集名稱; mysql> alter database myee_2203 default character set gbk; Query OK, 1 row affected (0.00 sec) mysql> show create database myee_2203; +-----------+-------------------------------------------------------------------+ | Database | Create Database | +-----------+-------------------------------------------------------------------+ | myee_2203 | CREATE DATABASE `myee_2203` /*!40100 DEFAULT CHARACTER SET gbk */ | +-----------+-------------------------------------------------------------------+ 1 row in set (0.00 sec) -- 刪除庫(kù) -- drop database 庫(kù)名 ; mysql> drop database ee2203; Query OK, 0 rows affected (0.01 sec) mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | myee_2203 | | mysql | | performance_schema | | test | +--------------------+ -- drop database if exists 庫(kù)名 ; 如果存在這個(gè)庫(kù)刪除 mysql> drop database if exists myee_2203; Query OK, 0 rows affected (0.00 sec) mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | test | +--------------------+ 4 rows in set (0.00 sec)
數(shù)據(jù)庫(kù)DDL語(yǔ)句(數(shù)據(jù)庫(kù)定義語(yǔ)句)之建表,修改表,查詢表,刪除表…
mysql常見的數(shù)據(jù)類型 int :整數(shù)類型 默認(rèn)最大長(zhǎng)度11位字符,給int類型的數(shù)據(jù)的時(shí)候,當(dāng)前存儲(chǔ)的是值的真實(shí)長(zhǎng)度 舉例 年齡字段age int類型 int(字符數(shù)): 整數(shù)類型, 給int(3)這個(gè)值的時(shí)候,實(shí)際存儲(chǔ)3位,但是賦值的時(shí)候不夠3位 (使用很少) id字段 1-----int(3) -------------------001 varchar(最大支持255個(gè)長(zhǎng)度): 字符串類型 指定varchar(指定長(zhǎng)度) date:僅僅是日期類型 datetime:日期+時(shí)間類型 timestap:時(shí)間戳 (舉例:管理員添加一個(gè)商品,商品上架的時(shí)間:當(dāng)前系統(tǒng)瞬時(shí)時(shí)間 :2021-5-11 16:50分) double:小數(shù)類型 double(幾位數(shù),小數(shù)點(diǎn)后保留的位數(shù)) 舉例: double(4,2): 4位,小數(shù)點(diǎn)后保留2位 clob:大字符類型 支持 "大文本" blob:大字節(jié)類型 最大支持4G -- 建表之前,必須使用哪個(gè)庫(kù) -- use 庫(kù)名; mysql> use ee_2203; Database changed mysql> /* create table 表名( 字段名稱1 字段類型1, 字段名稱2 字段類型2, ... ... 字段名稱n 字段類型n ) ; */ mysql> create table student( -> id int, -> name varchar(10), -> age int, -> gender varchar(2), -> address varchar(50), -> socre double(3,1) -> ); Query OK, 0 rows affected (0.02 sec) -- 查詢當(dāng)前庫(kù)中有哪些表 -- show tables ; mysql> show tables ; +-------------------+ | Tables_in_ee_2203 | +-------------------+ | student | +-------------------+ 1 row in set (0.00 sec) mysql> -- 查看表的結(jié)構(gòu) -- desc 表名; mysql> desc student; +---------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +---------+-------------+------+-----+---------+-------+ | id | int(11) | YES | | NULL | | | name | varchar(10) | YES | | NULL | | | age | int(11) | YES | | NULL | | | gender | varchar(2) | YES | | NULL | | | address | varchar(50) | YES | | NULL | | | socre | double(3,1) | YES | | NULL | | +---------+-------------+------+-----+---------+-------+ 6 rows in set (0.01 sec) -- 修改表的字段名稱 -- alter table 表名 change 舊字段名稱 新的字段名稱 以前的字段數(shù)據(jù)類型; mysql> alter table student change gender sex varchar(2) ; Query OK, 0 rows affected (0.03 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> desc student; +---------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +---------+-------------+------+-----+---------+-------+ | id | int(11) | YES | | NULL | | | name | varchar(10) | YES | | NULL | | | age | int(11) | YES | | NULL | | | sex | varchar(2) | YES | | NULL | | | address | varchar(50) | YES | | NULL | | | socre | double(3,1) | YES | | NULL | | +---------+-------------+------+-----+---------+-------+ 6 rows in set (0.01 sec) -- 修改表的字段類型 modify -- alter table 表名 modify 字段名稱 新的字段類型 ; mysql> alter table student modify address varchar(100) ; Query OK, 0 rows affected (0.03 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> desc student; +---------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +---------+--------------+------+-----+---------+-------+ | id | int(11) | YES | | NULL | | | name | varchar(10) | YES | | NULL | | | age | int(11) | YES | | NULL | | | sex | varchar(2) | YES | | NULL | | | address | varchar(100) | YES | | NULL | | | socre | double(3,1) | YES | | NULL | | +---------+--------------+------+-----+---------+-------+ 6 rows in set (0.01 sec) -- 修改表:給表中添加一個(gè)新的字段 -- alter table 表名 add 字段名稱 字段類型; mysql> alter table student add description varchar(200) ; Query OK, 0 rows affected (0.04 sec) Records: 0 Duplicates: 0 Warnings: 0 -- 復(fù)制一張表 -- create table 新表名 like 舊表名; mysql> create table teachear like student ; Query OK, 0 rows affected (0.02 sec) mysql> show tables; +-------------------+ | Tables_in_ee_2203 | +-------------------+ | student | | teachear | +-------------------+ 2 rows in set (0.00 sec) -- 刪除表 -- drop table 表名; -- drop table if exists 表名; mysql> drop table if exists teachear; Query OK, 0 rows affected (0.01 sec) mysql> show tables; +-------------------+ | Tables_in_ee_2203 | +-------------------+ | student | +-------------------+ 1 row in set (0.00 sec)
DML數(shù)據(jù):數(shù)據(jù)庫(kù)操作語(yǔ)句 :操作表的記錄
查詢數(shù)據(jù)
-- 查詢這個(gè)庫(kù)中有哪些表 SHOW TABLES ; -- 創(chuàng)建一張新的表學(xué)生表,id,姓名,年齡,性別,住址 CREATE TABLE student( id INT , -- 學(xué)號(hào) NAME VARCHAR(10), -- 姓名 age INT, -- 年齡 gender VARCHAR(5), -- 性別 address VARCHAR(50) -- 住址 ) ; -- 查詢學(xué)生的表的結(jié)構(gòu) DESC student ;
插入數(shù)據(jù)
-- 給學(xué)生表中插入數(shù)據(jù) -- 插入數(shù)據(jù)的語(yǔ)法1:insert into 表名 values(值1,值2,值3,值4...值n); 插入全部數(shù)據(jù) INSERT INTO student VALUES(1,'高圓圓',42,'女','西安市') ; -- 插入表的數(shù)據(jù)支持 :一次插入多條數(shù)據(jù) -- insert into 表名 values(值1,值2,值3,值4...值n),(值1,值2,值3,值4...值n),(值1,值2,值3,值4...值n); INSERT INTO student VALUES(2,'文章',35,'男','咸陽(yáng)市'), (3,'馬伊琍',40,'女','上海市'),(4,'馬保國(guó)',56,'男','寶雞市') ; -- 語(yǔ)法2:插入部分字段,沒有插入的字段,默認(rèn)值就是null, 也支持一次性插入多條數(shù)據(jù) -- insert into 表名(字段名稱1,字段名稱2....) values(值1,值2...) ; INSERT INTO student(id,NAME,age,gender) VALUES(5,'王寶強(qiáng)',35,'男') ; INSERT INTO student(id,NAME,age,gender) VALUES(6,'張三豐',60,'男'),(7,'令狐沖',38,'男') ; /* 注意事項(xiàng): 1)插入的這些值必須要和表中的字段對(duì)應(yīng)上; 先后順序保證一致! 2)目前沒有加入"數(shù)據(jù)庫(kù)約束",可以插入非法數(shù)據(jù),舉例:id重復(fù) , 后期需要使用數(shù)據(jù)庫(kù)約束來限定用戶的操作表的行為! */ -- 插入一個(gè)學(xué)生id為7的 INSERT INTO student VALUES(7,'張佳寧',32,'女','西安市') ;
修改數(shù)據(jù)
-- 一般實(shí)際開發(fā)中修改:都是帶條件修改 (推薦) -- update 表名 set 字段名稱 = 值 where 條件 ; -- 需求:將name為張佳寧的學(xué)生id改為8 UPDATE student SET id = 8 WHERE NAME = '張佳寧' ; -- 需求: 修改id為6的學(xué)生的姓名為 '姚笛' (id字段在實(shí)際開發(fā)中:都是非業(yè)務(wù)字段,以后唯一的) UPDATE student SET NAME = '姚笛' WHERE id = 6 ; -- 語(yǔ)法2:一次性修改多個(gè)字段 -- update 表名 set 字段名稱1 = 值 ,字段名稱2 =值2.... where 條件; -- 需求:將id為6的學(xué)生 的年齡改為25,性別改為女,地址改為上海 UPDATE student SET age = 25,gender ='女',address='上海市' WHERE id = 6 ; -- 語(yǔ)法3:不帶條件 屬于批量修改 (部分場(chǎng)景可以用的) -- update 表名 set 字段名稱= 值,字段名稱2 =值2.... UPDATE student SET address = '鄠邑區(qū)' ;
刪除數(shù)據(jù)
-- delete from 表名 where 條件 ; 帶條件刪除記錄 (使用的非業(yè)務(wù)字段id刪除) -- 需求:刪除id為7的學(xué)生信息 DELETE FROM student WHERE id = 7 ; -- delete from 表名 :刪除全表數(shù)據(jù) DELETE FROM student ; -- truncate table 表名; 刪除全表數(shù)據(jù) TRUNCATE TABLE student; /* 面試題: delete from 表名 和 truncate table 表名 :兩個(gè)區(qū)別? 共同點(diǎn):都是可以刪除全表的記錄的; 不同點(diǎn): delete from 表名 ; 僅僅只是將表的全部記錄刪除了,表還在! 它針對(duì)id(非業(yè)務(wù)字段:設(shè)置主鍵并且自增長(zhǎng)),它不影響自增長(zhǎng)主鍵的這個(gè)值; (數(shù)據(jù)庫(kù)約束后面講) truncat table 表名; 將表所有數(shù)據(jù)刪除,而且還會(huì)把刪除之后, 自動(dòng)創(chuàng)建一個(gè)張一模一樣的表,影響自增主鍵的值! */ DROP TABLE student ; SHOW TABLES ; -- 創(chuàng)建一個(gè)學(xué)生表,id 加入主鍵(非空且唯一)和自增長(zhǎng)(不斷的自增1)約束 CREATE TABLE student( id INT PRIMARY KEY AUTO_INCREMENT , -- id主鍵并且自增長(zhǎng) NAME VARCHAR(20),-- 姓名 age INT ); -- 一次插入4條 INSERT INTO student(NAME,age) VALUES('高圓圓',42),('張佳寧',32),('文章',35),('王寶強(qiáng)',38) ; -- 自增長(zhǎng)的id可以自己給個(gè)值 INSERT INTO student VALUES(15,'高圓圓2',42); INSERT INTO student(NAME,age) VALUES('姚笛',35) ;
DQL語(yǔ)句:(數(shù)據(jù)庫(kù)查詢語(yǔ)句)
-- DQL語(yǔ)句最通用的語(yǔ)法:查詢表的全部數(shù)據(jù) -- -- * 代表所有字段,僅僅是自己玩的時(shí)候可以用,實(shí)際開發(fā)中不能用*,需要寫上全部的字段名稱 SELECT * FROM student ; CREATE TABLE student3 ( id INT, -- 編號(hào) NAME VARCHAR(20), -- 姓名 age INT, -- 年齡 sex VARCHAR(5), -- 性別 address VARCHAR(100), -- 地址 math INT, -- 數(shù)學(xué) english INT -- 英語(yǔ) ); INSERT INTO student3(id,NAME,age,sex,address,math,english) VALUES (1,'馬云',55,'男',' 杭州',66,78), (2,'馬化騰',45,'女','深圳',98,87), (3,'馬景濤',55,'男','香港',56,77), (4,'柳巖 ',20,'女','湖南',76,65), (5,'柳青',20,'男','湖南',86,NULL), (6,'劉德華',57,'男','香港 ',99,99), (7,'馬德',22,'女','香港',99,99), (8,'德瑪西亞',18,'男','南京',56,65);
1)最基本的查詢語(yǔ)句 select
-- 查詢?nèi)頂?shù)據(jù):select * from 表名; SELECT * FROM student3 ; -- 實(shí)際開發(fā)中查詢?nèi)孔侄?把字段名稱全部寫上 SELECT id, NAME, age, sex, address, math, english FROM student3; -- 查詢?nèi)孔侄蔚臅r(shí)候,給字段起一個(gè)別名 as '別名名稱' ,as省略 SELECT id AS '編號(hào)', NAME AS '姓名', age AS '年齡', sex AS '性別', address AS '地址', math AS '數(shù)學(xué)成績(jī)', english AS '英語(yǔ)成績(jī)' FROM student3 ; -- as 可以省略的 SELECT id '編號(hào)', NAME '姓名', age '年齡', sex '性別', address '地址', math '數(shù)學(xué)成績(jī)', english '英語(yǔ)成績(jī)' FROM student3 ; -- 當(dāng)表的名稱比較長(zhǎng)的時(shí)候,可以給表名起一個(gè)別名; SELECT s.`id` '學(xué)生編號(hào)', s.`name` '學(xué)生姓名', s.`age` '學(xué)生年齡', s.`sex` '學(xué)生性別', s.`address` '學(xué)生地址', s.`math` '數(shù)學(xué)成績(jī)', s.`english` '英語(yǔ)成績(jī)' FROM student3 s ;-- 起了一個(gè)別名s -- 可以查詢部分字段 -- 需求:查詢學(xué)生的姓名以及數(shù)學(xué)和英語(yǔ)成績(jī) SELECT NAME '姓名', math '數(shù)學(xué)成績(jī)', english '英語(yǔ)成績(jī)' FROM student3 ; -- 需求:查詢學(xué)生的地址信息 SELECT address FROM student3; -- 發(fā)現(xiàn):字段冗余(重復(fù)度大) 字段去重 DISTINCT 后面跟上字段名稱 SELECT DISTINCT address FROM student3;
2)DQL語(yǔ)句之條件查詢 where 關(guān)鍵字
-- 2.1)使用 賦值運(yùn)算符=,比較運(yùn)算符 <,<=,>=,>,!=, mysql中的不等于 <> -- 2.2)Java中邏輯運(yùn)算符:&&,|| mysql推薦使用 and , or -- 2.2)針對(duì)兩個(gè)范圍查詢: 可以使用&&,可以使用and, 也可以 "字段名稱 between 值1 and 值2" -- 需求:查詢年齡大于20歲的學(xué)生所有信息 SELECT * FROM student3 WHERE age > 20 ; -- 需求:查詢年齡在20到30之間的學(xué)生的姓名,年齡,住址 ,數(shù)學(xué)和英語(yǔ)成績(jī)信息 SELECT NAME '姓名', age '年齡', address '住址', math '數(shù)學(xué)成績(jī)', english '英語(yǔ)成績(jī)' FROM student3 WHERE age >= 20 && age <= 30 ; -- && 邏輯雙與 -- mysql中使用and 并列關(guān)系 SELECT NAME '姓名', age '年齡', address '住址', math '數(shù)學(xué)成績(jī)', english '英語(yǔ)成績(jī)' FROM student3 WHERE age >= 20 AND age <= 30 ; -- and 連接 -- 使用的between 值1 and 值2 SELECT NAME '姓名', age '年齡', address '住址', math '數(shù)學(xué)成績(jī)', english '英語(yǔ)成績(jī)' FROM student3 WHERE age BETWEEN 20 AND 30 ; -- 需求:查詢年齡是20歲學(xué)生的所有信息 SELECT * FROM student3 WHERE age = 20 ; -- 需求:查詢年齡不是20歲的學(xué)生的所有信息 SELECT * FROM student3 WHERE age != 20 ; -- != Java中 的用法 SELECT * FROM student3 WHERE age <> 20 ;-- mysql中的不等于 <> -- 需求:查詢年齡是18歲或者是20或者是45歲的學(xué)生的所有信息 SELECT * FROM student3 WHERE age = 18 || age =20 || age = 45 ;-- Java中邏輯雙或|| SELECT * FROM student3 WHERE age = 18 OR age =20 OR age = 45 ; -- Mysql中的or這個(gè)表示 或(并集) -- 上面這個(gè)格式優(yōu)化為 in(值1,值2,值3..值n) ;in集合語(yǔ)句 SELECT * FROM student3 WHERE age IN(18,20,45) ; -- Java語(yǔ)言中:去判斷某個(gè)條件的內(nèi)容為null ,mysql語(yǔ)言不支持這個(gè)格式 ==null -- 需求:查詢學(xué)生的英語(yǔ)成績(jī)?yōu)閚ull的學(xué)生所有信息 -- select * from student3 where english == null ; -- mysql中判斷某個(gè)字段為null,使用的語(yǔ)法是 is null -- 判斷某個(gè)字段不為null,使用的語(yǔ)法是 is not null SELECT * FROM student3 WHERE english IS NULL ; -- 需求:查詢學(xué)生的英語(yǔ)成績(jī)不為null的學(xué)生的所有信息 SELECT * FROM student3 WHERE english IS NOT NULL ; -- 關(guān)于int類型字段求和的時(shí)候,注意: int類型的值 + null 值 = null; -- 查詢學(xué)生的姓名以及英語(yǔ)和數(shù)學(xué)總分 SELECT NAME '姓名', (math+english) '總分' FROM student3 ; -- 上面這種情況:不太友好,數(shù)學(xué)成績(jī)有值,但是結(jié)果求和是null -- mysql提供函數(shù) ifnull(字段名稱,值); 如果字段名稱是null,給一個(gè)默認(rèn)值 SELECT NAME '姓名', (math+IFNULL(english,0)) '總分' FROM student3 ; SHOW VARIABLES LIKE '%character%' ;
3)DQL語(yǔ)句之 where條件后面加入模糊查詢 —關(guān)鍵字 like
-- select 字段列表 from 表名 where 字段名稱 like '%xxx%' ; -- %:代表任何多個(gè)字符或者某個(gè)字符 (使用居多):網(wǎng)站門戶系統(tǒng)---"搜索商品" ,模糊搜索 -- _:代表某個(gè)單個(gè)字符 -- 需求:查詢所有姓馬的學(xué)生信息 SELECT * FROM student3 WHERE NAME LIKE '%馬%' -- 查詢學(xué)生姓名三個(gè)字符并且第二個(gè)字符是化的人 SELECT * FROM student3 WHERE NAME LIKE '_化_' ; -- 查詢姓名為三個(gè)字符的學(xué)生信息 SELECT * FROM student3 WHERE NAME LIKE '___' ;
4)聚合函數(shù)查詢
針對(duì)int類型: 單行單列數(shù)據(jù) -- select 聚合函數(shù) from 表名 where 還可以指定條件; -- count(字段名稱):查詢表中記錄 ,字段名稱使用都是id,非業(yè)務(wù)字段 -- avg(字段名稱): 查詢這個(gè)字段中平均值 -- sum(字段列表):求和函數(shù) -- max(字段名稱):最大值 -- min(字段名稱):最小值 -- 需求:查詢表的總記錄數(shù) -- select count(english) '總記錄數(shù)' from student3; -- 前提條件使用業(yè)務(wù)字段查詢,不能有null值 -- select count(ifnull(english,0)) '總記錄數(shù)' from student3; SELECT COUNT(id) '總條數(shù)' FROM student3 ; -- 查詢數(shù)學(xué)平均分 avg(字段名稱) SELECT AVG(math) '數(shù)學(xué)平均分' FROM student3; -- 數(shù)學(xué)和英語(yǔ)成績(jī)求和的學(xué)生信息(姓名,和總分) SELECT SUM(math+IFNULL(english,0)) '總分' FROM student3; -- max()和min() SELECT MAX(math) '數(shù)學(xué)最高分' FROM student3 ; -- select語(yǔ)句嵌套select語(yǔ)句 --- 子查詢 -- 需求:查詢出學(xué)生數(shù)學(xué)成績(jī)大于 數(shù)學(xué)平均分的學(xué)生所有信息; -- 使用where 條件 后面帶上 比較運(yùn)算符... -- Java中 -- int x =10,y ; -- y = y+x ; 將10代入 -- 1)查詢數(shù)學(xué)平均分是多少 SELECT AVG(math) FROM student3; -- 79.5000 -- 2)查詢大于數(shù)學(xué)平均分的學(xué)生信息 SELECT * FROM student3 WHERE math > 79.5000; -- 一步走 SELECT * FROM student3 WHERE math > (SELECT AVG(math) FROM student3) ; -- 查詢數(shù)學(xué)成績(jī)最高分的學(xué)生的姓名,年齡,地址以及數(shù)學(xué)成績(jī); -- 1)查詢最高分是多少 SELECT MAX(math) FROM student3; -- 99 -- 2)查詢最高分是這個(gè)成績(jī)的學(xué)生信息 SELECT NAME '姓名', age '年齡', address '地址', math '數(shù)學(xué)成績(jī)' FROM student3 WHERE math = 99 ; -- 一步走 SELECT NAME '姓名', age '年齡', address '地址', math '數(shù)學(xué)成績(jī)' FROM student3 WHERE math = (SELECT MAX(math) FROM student3) ;
5)DQL之排序查詢 order by
select 字段列表 from 表名 order by 字段名稱 排序規(guī)則(asc(默認(rèn)值就是升序)或者desc 降序) UPDATE student3 SET english = 88 WHERE id = 5 ; UPDATE student3 SET english = 94 WHERE id = 6 ; -- 需求:按照數(shù)學(xué)成績(jī)升序排序 單個(gè)字段 SELECT * FROM student3 ORDER BY math ASC ; -- 默認(rèn)不寫排序規(guī)則,就是asc 升序 -- 同時(shí)條件和order by,order by在where的后面 -- 需求:數(shù)學(xué)成績(jī)大于56分的學(xué)生進(jìn)行數(shù)學(xué)的降序排序 SELECT NAME , math FROM student3 WHERE math > 56 -- 先滿足條件,才能排序!where 必須order by之前 ORDER BY math DESC ; -- 多個(gè)字段要同時(shí)排序,首先第一個(gè)字段排序規(guī)則,然后才是第二個(gè)字段 -- 需求:數(shù)學(xué)成績(jī)降序,英語(yǔ)成績(jī)升序排序 SELECT * FROM student3 ORDER BY math DESC , english ASC ; SELECT * FROM student3 ;
6)DQL語(yǔ)句之分組查詢:group by
-- select 字段列表 from 表名 group by 分組字段名稱; -- 注意事項(xiàng): 1)查詢的字段列表中可以使用 分組字段 -- 2)group by之后不能使用聚合函數(shù) -- 需求:按照性別分組,查詢出他們的數(shù)學(xué)成績(jī)的平均分 SELECT sex '性別', -- 查詢的分組字段 AVG(math) '數(shù)學(xué)平均分' -- 查詢每一個(gè)組的數(shù)學(xué)平均分 FROM student3 GROUP BY sex ; -- 帶條件分組查詢的語(yǔ)法: where 條件 必須放在group by 之前,否則語(yǔ)法錯(cuò)誤! -- select 字段列表包含分組字段,聚合函數(shù).. from 表名 where 條件 group by 分組字段; -- 需求:按照性別分組,查詢出他們的數(shù)學(xué)成績(jī)的平均分,數(shù)學(xué)成績(jī)大于70分的參與分組 SELECT sex '性別', AVG(math) '數(shù)學(xué)平局分' FROM student3 WHERE math > 70 -- 先滿足條件,然后才能分組; GROUP BY sex ;
7)篩選查詢 having
-- where條件,group by,having 必須先有條件,分組,然后才篩選! -- 注意:篩選的后面可以使用聚合函數(shù),group by的后面是不能使用聚合函數(shù)的 -- 需求:按照性別分組,查詢數(shù)學(xué)平局分,條件:數(shù)學(xué)成績(jī)大于70的人參與分組, 篩選出人數(shù)大于2的這一組 SELECT sex '性別', COUNT(id) '總?cè)藬?shù)', AVG(math) '數(shù)學(xué)平均分' FROM student3 WHERE math > 70 GROUP BY sex HAVING -- 后面可以使用聚合函數(shù) COUNT(id) > 2 ; -- 優(yōu)化為 SELECT sex '性別', COUNT(id) 人數(shù), AVG(math) '數(shù)學(xué)平均分' FROM student3 WHERE math > 70 GROUP BY sex HAVING -- 后面可以使用聚合函數(shù) 人數(shù) > 2 ;
8)分頁(yè)查詢 limit
-- select 字段列表 from 表名 limit 起始行數(shù),每頁(yè)顯示的條數(shù); -- 起始行數(shù):從0開始算的, -- 起始行數(shù) = (當(dāng)前頁(yè)碼-1)*每頁(yè)顯示的條數(shù) -- 前提條件:每頁(yè)顯示2條, -- 第一頁(yè)數(shù)據(jù) SELECT * FROM student3 LIMIT 0,2; -- 第二頁(yè)數(shù)據(jù) SELECT * FROM student3 LIMIT 2,2 ; -- 第三頁(yè)數(shù)據(jù) SELECT * FROM student3 LIMIT 4,2 ; -- 第四頁(yè)數(shù)據(jù) SELECT * FROM student3 LIMIT 6,2 ; -- 第五頁(yè)數(shù)據(jù) SELECT * FROM student3 LIMIT 8,2; -- 第六頁(yè)數(shù)據(jù) SELECT * FROM student3 LIMIT 10,2; -- 第七頁(yè)數(shù)據(jù) SELECT * FROM student3 LIMIT 12,2;
到此,相信大家對(duì)“javascript是不是sql語(yǔ)言”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
分享題目:javascript是不是sql語(yǔ)言
分享地址:http://aaarwkj.com/article18/pjcggp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、面包屑導(dǎo)航、自適應(yīng)網(wǎng)站、ChatGPT、靜態(tài)網(wǎng)站、網(wǎng)站排名
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)