Xogta MySQL ku biirista miisaska badan ee gudaha? bidix bidix ku biir waxtarka isticmaalka

database MySQLKu biirka gudaha isticmaalka miisaska badan? bidix bidix ku biir waxtarka isticmaalka

Mysql isticmaalka isku xirka

Cutubyadii hore, waxaan ku barannay sida loo akhriyo xogta hal miis, taas oo fudud, laakiin codsiyada dhabta ah waxaa badanaa lagama maarmaan ah in la akhriyo xogta laga soo qaatay miisaska xogta.

Cutubkan waxaan ku tusi doonaa sida loo isticmaalo JOIN-ka MySQL si aad u waydiiso xogta laba ama in ka badan.

Waxaad isticmaali kartaa Mysql's JOIN ee DOORO, CUSBOONAYSIINTA iyo DELETE weedhaha si aad ugu biirto weydiimaha miiska badan.

JOIN waxa loo qaybiyaa qiyaas ahaan saddexda qaybood ee soo socda iyadoo loo eegayo hawsheeda:

  • KU BIIR GUDAHA: Soo hel diiwaanno leh goobo isbarbar socda oo ku yaal laba miis.
  • KU BIIR BIDIX (ku biir bidix):Hel dhammaan diiwaannada miiska bidix, xitaa haddii aanay jirin diiwaanno u dhigma oo ku jira miiska saxda ah.
  • KU BIIR XAQA (ku biir midig): Si ka duwan ku biirista BIDIX, waxa loo isticmaalaa in lagu helo dhammaan diiwaanada shaxda saxda ah, xataa haddii aanay jirin diiwaan u dhigma oo ku jira miiska bidix.

Adigoo isticmaalaya GUDAHA KU BIIR oo ku jira Command Prompt

Waxaan ku haynaa laba shax tcount_tbl iyo chenweiliang_tbl ee xogta chenweiliang.Xogta labada shaxda xogtu waa sida soo socota:

tusaale

Isku day tusaalooyinka soo socda:

xogta tusaalaha tijaabada

mysql> use chenweiliang;
Database changed
mysql> SELECT * FROM tcount_tbl;
+---------------+--------------+
| chenweiliang_author | chenweiliang_count |
+---------------+--------------+
| 陈沩亮博客 | 10 |
| chenweiliang.com | 20 |
| Google | 22 |
+---------------+--------------+
3 rows in set (0.01 sec)
 
mysql> SELECT * from chenweiliang_tbl;
+-----------+---------------+---------------+-----------------+
| chenweiliang_id | chenweiliang_title | chenweiliang_author | submission_date |
+-----------+---------------+---------------+-----------------+
| 1 | 学习 PHP | 陈沩亮博客 | 2017-04-12 |
| 2 | 学习 MySQL | 陈沩亮博客 | 2017-04-12 |
| 3 | 学习 Java | chenweiliang.com | 2015-05-01 |
| 4 | 学习 Python | chenweiliang.com | 2016-03-06 |
| 5 | 学习 C | FK | 2017-04-05 |
+-----------+---------------+---------------+-----------------+
5 rows in set (0.01 sec)

Marka xigta waxaan isticmaali doonaa MySQLKU BIIR GUDAHA (waxaad sidoo kale ka tagi kartaa GUDAHA oo waxaad isticmaali kartaa JOIN, saamayntu waa isku mid)Si aad isugu xidho labada shax ee kor ku xusan si aad u akhrido qiimaha goobta chenweiliang_count ee u dhiganta dhammaan chenweiliang_author beeraha ku yaal miiska chenweiliang_tbl ee miiska tcount_tbl:

INNER JOIN

mysql> SELECT a.chenweiliang_id, a.chenweiliang_author, b.chenweiliang_count FROM chenweiliang_tbl a INNER JOIN tcount_tbl b ON a.chenweiliang_author = b.chenweiliang_author;
+-------------+-----------------+----------------+
| a.chenweiliang_id | a.chenweiliang_author | b.chenweiliang_count |
+-------------+-----------------+----------------+
| 1 | 陈沩亮博客 | 10 |
| 2 | 陈沩亮博客 | 10 |
| 3 | chenweiliang.com | 20 |
| 4 | chenweiliang.com | 20 |
+-------------+-----------------+----------------+
4 rows in set (0.00 sec)

Odhaahda SQL ee sare waxay u dhigantaa:

HALKEE qodob

mysql> SELECT a.chenweiliang_id, a.chenweiliang_author, b.chenweiliang_count FROM chenweiliang_tbl a, tcount_tbl b WHERE a.chenweiliang_author = b.chenweiliang_author;
+-------------+-----------------+----------------+
| a.chenweiliang_id | a.chenweiliang_author | b.chenweiliang_count |
+-------------+-----------------+----------------+
| 1 | 陈沩亮博客 | 10 |
| 2 | 陈沩亮博客 | 10 |
| 3 | chenweiliang.com | 20 |
| 4 | chenweiliang.com | 20 |
+-------------+-----------------+----------------+
4 rows in set (0.01 sec)

MySQL ku biir BIDIX

Ku biirista bidix MySQL way ka duwan tahay ku biirista. Ku biirista BIDIX ee MySQL waxay akhrin doontaa dhammaan xogta ku jirta shaxda xogta bidix, xitaa haddii miiska saxda ahi aanu lahayn xog u dhiganta.

tusaale

Isku day tusaalayaashan soo socda chenweiliang_tbl miiska bidix,tcount_tbl Shaxda saxda ah, faham codsiga MySQL LEFT JOIN:

KU BIIR BIDIX

mysql> SELECT a.chenweiliang_id, a.chenweiliang_author, b.chenweiliang_count FROM chenweiliang_tbl a LEFT JOIN tcount_tbl b ON a.chenweiliang_author = b.chenweiliang_author;
+-------------+-----------------+----------------+
| a.chenweiliang_id | a.chenweiliang_author | b.chenweiliang_count |
+-------------+-----------------+----------------+
| 1 | 陈沩亮博客 | 10 |
| 2 | 陈沩亮博客 | 10 |
| 3 | chenweiliang.com | 20 |
| 4 | chenweiliang.com | 20 |
| 5 | FK | NULL |
+-------------+-----------------+----------------+
5 rows in set (0.01 sec)

Tusaalaha kore, BIDIXA BIDIX ayaa la isticmaalay, bayaankuna wuxuu akhriyi doonaa dhammaan xogta goobta la doortay ee shaxda xogta chenweiliang_tbl ee dhanka bidix, xitaa haddii aysan jirin qiimaha goobta u dhigma ee chenweiliang_author ee miiska tcount_tbl dhanka midig.


MySQL ku biir

Ku biirka midig ee MySQL wuxuu akhrin doonaa dhammaan xogta ku jirta shaxda xogta ee dhanka midig, xitaa haddii aysan jirin xog u dhiganta shaxda bidixda.

tusaale

Isku day tusaalayaashan soo socda chenweiliang_tbl miiska bidix,tcount_tbl Si aad u hesho miiska saxda ah, faham codsiga MySQL ee ku biirka saxda ah:

XAQA KU BIIR

mysql> SELECT a.chenweiliang_id, a.chenweiliang_author, b.chenweiliang_count FROM chenweiliang_tbl a RIGHT JOIN tcount_tbl b ON a.chenweiliang_author = b.chenweiliang_author;
+-------------+-----------------+----------------+
| a.chenweiliang_id | a.chenweiliang_author | b.chenweiliang_count |
+-------------+-----------------+----------------+
| 1 | 陈沩亮博客 | 10 |
| 2 | 陈沩亮博客 | 10 |
| 3 | chenweiliang.com | 20 |
| 4 | chenweiliang.com | 20 |
| NULL | NULL | 22 |
+-------------+-----------------+----------------+
5 rows in set (0.01 sec)

Ku biirista saxda ah waxa lagu isticmaalayaa tusaalaha sare, bayaankan waxa uu akhriyi doonaa dhammaan xogta goobta la doortay ee shaxda tcount_tbl ee dhanka midig, xataa haddii aanu jirin qiimaha goobta u dhigma ee chenweiliang_author ee shaxda chenweiliang_tbl ee bidixda.


Isticmaalka JOIN ee qoraalka PHP

Shaqada mysqli_query() waxaa loo isticmaalaa PHP si loo fuliyo weedhaha SQL, waxaad isticmaali kartaa isla bayaanka SQL ee kor ku xusan sida cabirka mysqli_query() function.

Isku day tusaalahan soo socda:

Amarka MySQL ee tijaabada:

<?
php
$dbhost = 'localhost:3306'; // mysql服务器主机地址
$dbuser = 'root'; // mysql用户名
$dbpass = '123456'; // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
 die('连接失败: ' . mysqli_error($conn));
}
// 设置编码,防止中文乱码
mysqli_query($conn , "set names utf8");
 
$sql = 'SELECT a.chenweiliang_id, a.chenweiliang_author, b.chenweiliang_count FROM chenweiliang_tbl a INNER JOIN tcount_tbl b ON a.chenweiliang_author = b.chenweiliang_author';
 
mysqli_select_db( $conn, 'chenweiliang' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
 die('无法读取数据: ' . mysqli_error($conn));
}
echo '<h2>陈沩亮博客 MySQL JOIN 测试<h2>';
echo '<table border="1"><tr><td>教程 ID</td><td>作者</td><td>登陆次数</td></tr>';
while($row = mysqli_fetch_array($retval, MYSQL_ASSOC))
{
 echo "<tr><td> {$row['chenweiliang_id']}</td> ".
 "<td>{$row['chenweiliang_author']} </td> ".
 "<td>{$row['chenweiliang_count']} </td> ".
 "</tr>";
}
echo '</table>';
mysqli_close($conn);
?>

Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ) la wadaago "Isticmaalka miisaska badan ee MySQL xogta gudaha ku biirista? Waxtarka Isticmaalka Ku biir Bidix, way ku caawin doontaa.

Ku soo dhawoow inaad wadaagto xiriirka maqaalkan:https://www.chenweiliang.com/cwl-488.html

Ku soo dhawoow kanaalka Telegramka ee Chen Weiliang's blog si aad u hesho wararkii ugu dambeeyay!

🔔 Noqo kuwa ugu horreeya ee hela "ChatGPT Content Suuqgeynta AI Hagaha Isticmaalka Qalabka" ee tusaha sare ee kanaalka! 🌟
📚 Hagahan waxa uu ka kooban yahay qiimo aad u weyn, 🌟Tani waa fursad naadir ah, ha seegin! ⏰⌛💨
Share iyo like saar hadaad jeceshahay!
Wadaagistaada iyo jeceylkaaga ayaa ah dhiirigelintayada joogtada ah!

 

评论

Cinwaanka emailkaaga lama daabici doono. 项 已 用 * Calaamadda

kor ugu rog