您好,登錄后才能下訂單哦!
小編給大家分享一下java中mysql查詢語句是什么,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
java中mysql查詢語句:1、簡(jiǎn)單查詢;2、簡(jiǎn)單查詢;3、排序查詢;4、分組查詢,代碼為【group by 被分組的字段.[Having 條件]】;5、分頁查詢,代碼為【select * from 表名 limit x;】。
java中mysql查詢語句:
1、簡(jiǎn)單查詢
–查詢所有的字段:
select * from 表名 ;
- - 查詢指定的字段:
select 字段1,字段2… from 表名 ;
- - 表別名 : 別名中如果有特殊符號(hào)或空格,需要用引號(hào)引起來
select * from 表名 [as] 表別名
- - 列別名 : as 可省略.
select 字段1 [as] 別名 , 字段2 [as] 別名 from 表名 ;
- - 去掉重復(fù)值: 如果有多個(gè)字段 , 要同時(shí)重復(fù).
select distinct 字段 from 表名 ;
- - 運(yùn)算查詢:
select (math+english) 總成績(jī) from 表名 ;
2、條件查詢:
比較運(yùn)算符: > , < , = , >= , <= , <>(!=)
邏輯運(yùn)算符:
between…and… : 顯示在某一區(qū)間的值(含頭含尾)
in( 多個(gè)條件) : 或者(or)關(guān)系
like: 模糊查詢
% 代表零個(gè)或者多個(gè)任意字符.
_ 代表一個(gè)字符.
is null : 判斷是否為空.
3、排序查詢 : 寫在sql語句末尾.
select * from 表名 order by 排序字段 ASC(升序 - 默認(rèn))/DESC(降序)
被排序的字段如果有多個(gè),先按照第一個(gè)排序,在按照后邊的依次排序
4、聚合函數(shù) : select之后 , from 之前.
sum(求和): 指定列不是數(shù)值類型 , 計(jì)算結(jié)果為 0 ;
count(統(tǒng)計(jì)數(shù)): 不包含null; 一般用 * ;
max(最大值): 如果是字符串類型 ,使用字符串排序;
min(最小值) :
avg(平均值): 指定列不是數(shù)值類型 , 計(jì)算結(jié)果為 0 ;
5、分組查詢
group by 被分組的字段.[Having 條件]
where : 分組查詢前過濾 .
having: 分組查詢后過濾 .
注意; 被分組的字段,一般都寫在select后作為查詢條件 , 方便查看
6、分頁查詢(了解)
使用關(guān)鍵字limit
格式一:只要前x條數(shù)據(jù)
select * from 表名 limit x;
格式二:分頁查詢
select * from 表名 limit m,n;
m:每頁數(shù)據(jù)的開始行數(shù),變化的
n:每頁顯示的數(shù)量,固定的
注意:
數(shù)據(jù)庫中行的索引是從0開始
列的索引是從1開始
單表案例:
-- 創(chuàng)建數(shù)據(jù)庫 create database day03; -- 員工表 USE day03; CREATE TABLE emp( -- 員工編號(hào) empno INT, -- 員工姓名 ename VARCHAR(50), -- 工作 job VARCHAR(50), -- 管理者 mgr INT, -- 雇用時(shí)間 hiredate DATE, -- 工資 sal DECIMAL(7,2), -- 獎(jiǎng)金 comm DECIMAL(7,2), -- 部門 deptno INT ) ; -- 部門表 CREATE TABLE dept( -- 部門 deptno INT, -- 部門名稱 dname VARCHAR(14), -- 部門位置 loc VARCHAR(13) ); -- 向員工表中添加數(shù)據(jù). INSERT INTO emp VALUES(7369,'SMITH','CLERK',7902,'1980-12-17',800,NULL,20); INSERT INTO emp VALUES(7499,'ALLEN','SALESMAN',7698,'1981-02-20',1600,300,30); INSERT INTO emp VALUES(7521,'WARD','SALESMAN',7698,'1981-02-22',1250,500,30); INSERT INTO emp VALUES(7566,'JONES','MANAGER',7839,'1981-04-02',2975,NULL,20); INSERT INTO emp VALUES(7654,'MARTIN','SALESMAN',7698,'1981-09-28',1250,1400,30); INSERT INTO emp VALUES(7698,'BLAKE','MANAGER',7839,'1981-05-01',2850,NULL,30); INSERT INTO emp VALUES(7782,'CLARK','MANAGER',7839,'1981-06-09',2450,NULL,10); INSERT INTO emp VALUES(7788,'SCOTT','ANALYST',7566,'1987-04-19',3000,NULL,20); INSERT INTO emp VALUES(7839,'KING','PRESIDENT',NULL,'1981-11-17',5000,NULL,10); INSERT INTO emp VALUES(7844,'TURNER','SALESMAN',7698,'1981-09-08',1500,0,30); INSERT INTO emp VALUES(7876,'ADAMS','CLERK',7788,'1987-05-23',1100,NULL,20); INSERT INTO emp VALUES(7900,'JAMES','CLERK',7698,'1981-12-03',950,NULL,30); INSERT INTO emp VALUES(7902,'FORD','ANALYST',7566,'1981-12-03',3000,NULL,20); INSERT INTO emp VALUES(7934,'MILLER','CLERK',7782,'1982-01-23',1300,NULL,10); -- 向部門表添加數(shù)據(jù) , 采用批量插入數(shù)據(jù), 用 , 號(hào)隔開 . INSERT INTO dept VALUES(10, 'ACCOUNTING', 'NEW YORK') ,(20, 'RESEARCH', 'DALLAS'),(30, 'SALES', 'CHICAGO'), (40, 'OPERATIONS', 'BOSTON'); -- 1. 查詢工資大于1200的員工姓名和工資 SELECT ename 員工姓名 , sal 工資 FROM emp WHERE sal > 1200; -- 2. 查詢員工號(hào)為7698的員工的姓名和部門號(hào) SELECT ename 員工姓名 , deptno 部門號(hào) FROM emp WHERE empno = 7698; -- 3. 選擇工資不在500到1200的員工的姓名和工資 SELECT ename 員工姓名 ,sal 工資 FROM emp WHERE sal<=1200 && sal >= 500; -- 4. 選擇雇用時(shí)間在1981-02-01到1987-05-01之間的員工姓名,job_id和雇用時(shí)間 SELECT ename 員工姓名,empno , hiredate FROM emp WHERE hiredate BETWEEN '1981-02-01' AND '1987-05-01'; -- 5. 選擇在20或30號(hào)部門工作的員工姓名和部門號(hào) SELECT ename 員工姓名,deptno 部門號(hào) FROM emp WHERE deptno IN(20 , 30 ); -- 6. 選擇在1981年雇用的員工的姓名和雇用時(shí)間 SELECT ename 員工姓名,hiredate 雇傭時(shí)間 FROM emp WHERE hiredate LIKE('1981-__-__'); -- 7. 選擇公司中沒有管理者的員工姓名及job_id SELECT ename 員工姓名,empno FROM emp WHERE mgr IS NULL; -- 8. 選擇公司中有獎(jiǎng)金的員工姓名,工資和獎(jiǎng)金級(jí)別 SELECT ename 員工姓名,sal 工資,comm 獎(jiǎng)金 FROM emp WHERE comm IS NOT NULL OR; -- 9. 選擇員工姓名的第三個(gè)字母是a的員工姓名 SELECT ename 員工姓名 FROM emp WHERE ename LIKE '__A%'; -- 10. 選擇姓名中有字母a和e的員工姓名 SELECT ename 員工姓名 FROM emp WHERE ename LIKE '%A%' OR '%E%' -- 11. 查詢員工號(hào),姓名,工資,以及工資提高百分之20%后的結(jié)果(new salary) SELECT empno 員工號(hào), ename 姓名,sal+(sal*0.2) 工資 FROM emp; -- 12. 將員工的姓名按首字母排序 SELECT ename FROM emp ORDER BY ename ASC; -- 升序 SELECT ename FROM emp ORDER BY ename DESC; -- 降序 -- 13. 查詢公司員工工資的最大值,最小值,平均值,總和 SELECT MAX(sal) 最大值,MIN(sal) 最小值 , AVG(sal) 平均值, SUM(sal) 總和 FROM emp; -- 14. 查詢各deptno的員工工資的最大值,最小值,平均值,總和 SELECT deptno 部門,MAX(sal) 最大值,MIN(sal) 最小值 , AVG(sal) 平均值, SUM(sal) 總和 FROM emp GROUP BY deptno; -- 15. 選擇具有各個(gè)deptno的員工人數(shù) SELECT deptno , COUNT(empno) FROM emp GROUP BY deptno;
以上是java中mysql查詢語句是什么的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。