mysql dms_关于MySQL与DMsql探寻

1、查询全部数据

达梦数据库

select * from "SYSDBA"."GRADE";

5f229ec33daf8d5f2e9d2221ccee5d26.png

mysql数据库

SELECT * FROM ceshi;

27aec36992ea386083d96cbdecaad618.png

2、更换表头

【加不加as的效果是一样的】

达梦数据库

select "CLASSID" frozen,"STU_COUNT" red ,"TEACHER_NAME" as red,"COURSE"

from "SYSDBA"."GRADE";

ebb81639be43ebce99816b0b4ba31be1.png

MySQL数据库

SELECT test as frozen, NAME as wcl,NAME wcl FROM ceshi;

3c115e5811bdc685cda2c99fb127df4a.png

3、组合新列 达梦与mysql只能拼接数字,不能拼接列或者其他字符

达梦数据库

select (123232+213213) as frozen from "SYSDBA"."GRADE";

e863b4ba3dc8027c2a6ad42aae69f5af.png

MySQL数据库

SELECT (1232+13121) as frozen FROM ceshi;

bd2a3674fbfd5de8fb4cc2c2466b5253.png

4、区间查询

达梦数据库

select "CLASSID","STU_COUNT","TEACHER_NAME","COURSE"

from "SYSDBA"."GRADE" where "STU_COUNT" between 20 and 38;

a08951208962d4aeb2dcd01f4bdf52c1.png

MySQL数据库

SELECT FROM ceshi WHERE age BETWEEN 30 and 80;

0c3ad7a5524a44c088aa4a9e61deab46.png

5、按首字母查

【ps】达梦数据库按照 ASCII(str)来排序、mysql在创建的时候一般选择选择utf-8作为编码

达梦数据库

select from "SYSDBA"."GRADE" order by "TEACHER_NAME";

b586c0c81381a53927365deabd9474bc.png

MySQL数据库

SELECT *FROM ceshi ORDER BY Name;

7d853b6bcf8ec0dcbea51c33fc4a98a6.png

【ps】那么mysql的排序规则是什么呢,探究一下

SELECT SUBSTRING(name,1,1), ASCII(SUBSTRING(name,1,1)) FROM ceshi ORDER BY SUBSTRING(name,1,1);

90d11076904e6b31eccfade11d482a1b.png

6.1、按照gbk ASCII(str)试试?

SELECT SUBSTRING(name,1,1), ASCII(CONVERT(SUBSTRING(name,1,1) USING gbk)) FROM ceshi ORDER BY CONVERT(SUBSTRING(name,1,1) USING gbk);

d66f3f858f6a89107609260fc3e7d9af.png

7、置换null为某个字符

达梦数据库

达梦的语法同mysql这里没有null的数据,就略过了。

mysql数据库

SELECT COALESCE(Name, "frozen") from ceshi ;

8322058996f0b082fa522e4370c01f03.png

8、【高级】条件返回case when

达梦数据库

select ,(case when "STU_COUNT" < 40 then ‘加油‘ else ‘还行‘ end)as frozen from "SYSDBA"."GRADE";

6db85c051fde59f53f91deb05ca88db0.png

mysql数据库

【ps】我认为小于100的都是凡人,大于100的都是仙人。

SELECT,(CASE WHEN Age < 100 THEN "凡人" ELSE ‘仙人‘ END) as frozen from ceshi;

9e4648a32e04e0fbad59982112b94da2.png

9、聚合函数

一、AVG()

AVG()函数计算一组值的平均值。 它计算过程中是忽略NULL值的.

达梦数据库

select avg("STU_COUNT") from "SYSDBA"."GRADE";

mysql数据库

SELECT AVG(Age) FROM ceshi;

37f3095c1281e26f2075c6dd67cf4b5d.png

二、COUNT()函数

达梦数据库与mysql一致

SELECT COUNT(*) FROM ceshi;

三、SUM()函数

达梦数据库与mysql一致

SELECT SUM(Age) FROM ceshi;

四、MAX()函数

select max("STU_COUNT") from "SYSDBA"."GRADE";

五、MIN()函数

select min("STU_COUNT") from "SYSDBA"."GRADE";

10、循环函数

mysql数据库

delimiter $$$

create procedure zqtest() -- 创建函数

begin

declare i int default 0;

set i=0;

start transaction;

while i<12 do

INSERT into ceshi(uuid) VALUES (i);

set i=i+1;

end while;

commit;

end

$$$

delimiter;

call zqtest();

a20b82f0fd31899f5e89bffc3a5c6c6f.png

创建完执行过程,要在函数中运行。

得到结果:

0ddae331e8f6864f2d2fd5699b3a2db7.png

原文:https://blog.51cto.com/13479739/2480879


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部