Stilly

Stilly

بېكەت باشلىقى

يازمىلىرى
ئەگەشكۈچىلىرى
ئەگەشكەنلىرى
74
32
0

MySql ئۆگىنىش 3 - MySql دىكى DML جۈملىلىرى(1)

MySql دىكى DML جۈملىلىرى ئاساسلىقى سانداندىكى سانلىق مەلۇماتلارغا مەشخۇلات قىلىدىغان بۇيرۇقلارنى كۆرسىتىدىغان بولۇپ ، يېزىش (insert)،يېڭىلاش (update)،ئۆچۈرۈش (delete) ۋە تەكشۈرۈش (select) قاتارلىق بۇيرۇقلارنى ئۆز ئىچىگە ئالىدۇ.


يېزىش (INSERT)

(1) key=>value شەكىلدە يېزىش .يەنى سانداندىكى column لار بىلەن ئۇچۇر يازغاندىكى value لارنىڭ ئۇدۇللاشتۇرۇپ يېزىش.

گېرامماتىكىسى : 

INSERT INTO tablename (field1,field2,...) VALUES (value1,value2,...)

مەسىلەن member ناملىق جەدۋەلگە يېڭى بىر ئەزا قوشۇش ئۈچۈن تۆۋەندىكىدەك يازساق بولىدۇ.

mysql> insert into member(uid,age,name) values(null,24,'user1');
Query OK, 1 row affected (0.02 sec)


(2) بىراقلا value شەكىلدە يېزىش .يەنى ئالدىنقى باسقۇچتىكىدەك key ۋە valueنى بىر بىرىگە ئۇدۇللاش ھاجەتسىز .

گېرامماتىكىسى :

INSERT INTO tablename VALUES(value1,value2,...)

مەسىلەن : بىز ئوخشاشلا member ناملىق جەدۋەلگە يەنى بىريېڭى ئەزا قوشۇش ئۈچۈن تۆۋەندىكىدەك يازساق بولىدۇ.

mysql> insert into member values(null,25,'oyghan');
Query OK, 1 row affected (0.01 sec)

يەنى بۇنداق يازغاندا mysql ئاپتوماتىك ھالدا ئىچكى قىسىمدا VALUES ئىچىدىكى ھەر بىر ئېلمىنىتنى تەرتىپ بويىچە  سانداندىكى column لارغا ئۇدۇللايدۇ.VALUES نىڭ ئىچىدىكى ئېلمىنىت سانى ۋە تېپى column نىڭ سانى ۋە تېپىغا ماس كەلمىسە خاتالىق مەلۇم قىلىدۇ.


(3) column تاللاپ تۇرۇپ يېزىش 

يەنى ئۇچۇر يازغاندا پەقەت بىز كۆرسىتىپ بەرگەن column غىلا ئۇچۇر يېزىشنى كۆرسىتىدۇ

گېرامماتىكىسى : 

INSERT INTO tablename (field1,field2) VALUES (value1,value2)

مەسىلەن member  دىگەن جەدۋەلگە ئىسمى oyghanbeg بولغان ئەزا قوشۇپ باقايلى.

mysql> insert into member(name) values('oyghanbeg');
Query OK, 1 row affected (0.02 sec)

دىمەك يۇقىردا بىز پەقەت ئەزا نامىنىلا يازدۇق،لىكىن يېشىنى يازمىدۇق،نەتىجىنى تەكشۈرۈپ باقساق oyghanbeg ناملىق ئەزانىڭ نورمال قوشۇلغانلىقىنى بايقايمىز.

mysql> select * from member;
+-----+------+-----------+
| uid | age  | name      |
+-----+------+-----------+
|   1 |   24 | user1     |
|   2 |   25 | oyghan    |
|   3 | NULL | oyghanbeg |
+-----+------+-----------+
3 rows in set (0.02 sec)


يېڭىلاش (UPDATE)

گېرامماتىكىسى : 

UPDATE tablename SET field1=value1,field2=value2,... WHERE CONDITION

مەسىلەن:ئالدىنقى قېتىم قوشقان oyghanbeg ناملىق ئەزانىڭ يېشىنى ئەسلىدىكى null دىن 25 ياشقا يېڭىلاپ باقايلى .

mysql> update member set age=25 where name='oyghanbeg';
Query OK, 1 row affected (0.01 sec)
Rows matched: 1  Changed: 1  Warnings: 0

دىمەك يۇقىردا ئەزا نامىغا ئاساسەن ئەزا يېشىنى ئۆزگەرتتۇق،يەنى بۇ يەردىكى شەرت ئەزا نامى.كىمنى ئۆزگەرتتۇق؟ oyghanbeg ناملىق ئەزانى.نېمىنى ئۆزگەرتتۇق ؟oyghanbeg ناملىق ئەزانىڭ يېشىنى.

نەتىجىنى تەكشۈرۈپ باقساق oyghanbeg ناملىق ئەزانىڭ يېشىنىڭ 25 كە ئۆزگەرگەنلىكىنى كۆرىمىز.

mysql> select * from member;
+-----+------+-----------+
| uid | age  | name      |
+-----+------+-----------+
|   1 |   24 | user1     |
|   2 |   25 | oyghan    |
|   3 |   25 | oyghanbeg |
+-----+------+-----------+
3 rows in set (0.00 sec)


ئۆچۈرۈش (DELETE)

گېرامماتىكىسى :

[DELETE FROM tablename [WHERE CONDITION

مەسىلەن ئالدىنقى مىسالدىكى oyghanbeg ناملىق ئەزانى ئۆچۈرمەكچى بولساق تۆۋەندىكىدەك يازىمىز.

mysql> delete from member where name='oyghanbeg';
Query OK, 1 row affected (0.01 sec)


تەكشۈرۈش (SELECT)

(1) جەدۋەلدىكى بارلىق column لارنى تەكشۈرۈش

SELECT * FROM tablename


(2) شەرت بويىچە تەكشۈرۈش 

[SELECT * FROM table [WHERE CONDITION


(3) كۆرسىتىلگەن column لارنى تەكشۈرۈش

SELECT field1,field2,... FROM tablename


(4) تەكرارلانغان نەتىجىلەرنى تاسقاپ (去重) تەكشۈرۈش 

SELECT DISTINCT [field1,field2] FROM tablename


(5) كۆپ شەرت بويىچە تەكشۈرۈش

SELECT * FROM tablename WHERE field=value AND field>value


(6) تەرتىپلەپ تەكشۈرۈش ORDER BY

[[SELECT * FROM tablename [WHERE CONDITION] [ORDER BY field[DESC|ASC


(7) ئىستون سانى كۆرسىتىپ تەكشۈرۈش LIMIT

[SELECT * FROM tablename ORDER BY column_name [DESC|ASC] LIMIT [num,num

مەسىلەن ئەزا جەدۋىلىدىن 2 ئىستوندىن باشلاپ 3 تال نەتىجە تەكشۈرمەكچى بولساق تۆۋەندىكىدەك يازساق بولىدۇ.

mysql> select * from member LIMIT 2,3;


توپلاش (聚合)

(1) ئومۇمىي يېغىندىسىنى تىپىش (SUM)

SELECT SUM(field) FROM tablename

مەسىلەن ئەزالار جەدۋىلىدىكى بارلىق ئەزالارنىڭ يېشىنىڭ ئومۇمىي قىممىتىنى ھىسابلاپ باقايلى.

mysql> SELECT SUM(age) FROM member;
+----------+
| SUM(age) |
+----------+
|       49 |
+----------+
1 row in set (0.01 sec)


(2)ئومۇمىي سانىنى تىپىش (COUNT)

SELECT COUNT(field) FROM tablename

مەسىلەن: ئەزالار جەدۋىلىدىكى ئەزالارنىڭ ئومۇمىي سانىنى ھىسابلاپ باقايلى.

mysql> SELECT count(uid) FROM member;
+------------+
| count(uid) |
+------------+
|          5 |
+------------+
1 row in set (0.00 sec)


(3) ئەڭ چوڭ قېممىتىنى تىپىش (MAX)

SELECT MAX(field) FROM tablename

مەسىلەن : ئەزالار جەدۋىلىدىكى يېشى ئەڭ چوڭ ئەزانى تەكشۈرۈپ كۆرەيلى.

mysql> SELECT max(age) FROM member;
+----------+
| max(age) |
+----------+
|       25 |
+----------+
1 row in set (0.01 sec)


(4) ئەڭ كىچىك قېممىتىنى تىپىش (MIN)

SELECT MIN(field) FROM tablename

بۇنىڭغا مىسال ئالمىساقمۇ بىلىپ بولدۇق ھەقىچان شۇندامۇ ھە...


1ئەزا بۇ تېمىنى ياقتۇردى
A13L1M17