Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

SQL JOIN µÄÓ÷¨

¶ÔÓÚSQLÎÒҲѧϰÁË£¬µ«ÊÇÕæÕýÓõ½µÄʱºò²ÅÖªµÀºÜ¶à¶«Î÷»¹²»Ì«Àí½â£¬ÔÚÍøÉÏ¿´ÁËһϣ¬ÕâÆªÎÄÕÂÖн²µÄºÜºÃ£¬ËùÒÔÄÃÀ´ºÍ´ó¼Ò·ÖÏíһϣº
SQL JOIN µÄÓ÷¨
¹ØÓÚsqlÓï¾äÖеÄÁ¬½Ó£¨join£©¹Ø¼ü×Ö£¬ÊǽÏΪ³£ÓöøÓÖ²»Ì«ÈÝÒ×Àí½âµÄ¹Ø¼ü×Ö£¬ÏÂÃæÕâ¸öÀý×Ó¸ø³öÁËÒ»¸ö¼òµ¥µÄ½âÊÍ --½¨±ítable1,table2£º
create table table1(id int,name varchar(10))
create table table2(id int,score int)
insert into table1 select 1,''lee''
insert into table1 select 2,''zhang''
insert into table1 select 4,''wang''
insert into table2 select 1,90
insert into table2 select 2,100
insert into table2 select 3,70
Èç±í
-------------------------------------------------
table1 | table2 |
-------------------------------------------------
id name |id score |
1 lee |1 90 |
2 zhang |2 100 |
4 wang |3 70 |
-------------------------------------------------
ÒÔϾùÔÚ²éѯ·ÖÎöÆ÷ÖÐÖ´ÐÐ
Ò»¡¢ÍâÁ¬½Ó
1.¸ÅÄ°üÀ¨×óÏòÍâÁª½Ó¡¢ÓÒÏòÍâÁª½Ó»òÍêÕûÍⲿÁª½Ó
2.×óÁ¬½Ó£ºleft join »ò left outer join
(1)×óÏòÍâÁª½ÓµÄ½á¹û¼¯°üÀ¨ LEFT OUTER ×Ó¾äÖÐÖ¸¶¨µÄ×ó±íµÄËùÓÐÐУ¬¶ø²»½ö½öÊÇÁª½ÓÁÐËùÆ¥ÅäµÄÐС£Èç¹û×ó±íµÄijÐÐÔÚÓÒ±íÖÐûÓÐÆ¥ÅäÐУ¬ÔòÔÚÏà¹ØÁªµÄ½á¹û¼¯ÐÐÖÐÓÒ±íµÄËùÓÐÑ¡ÔñÁбíÁоùΪ¿ÕÖµ(null)¡£
(2)sqlÓï¾ä
select * from table1 left join table2 on table1.id=table2.id
-------------½á¹û-------------
id name id score
------------------------------
1 lee 1 90
2 zhang 2 100
4 wang NULL NULL
------------------------------
×¢ÊÍ£º°üº¬table1µÄËùÓÐ×Ӿ䣬¸ù¾ÝÖ¸¶¨Ìõ¼þ·µ»Øtable2ÏàÓ¦µÄ×ֶΣ¬²»·ûºÏµÄÒÔnullÏÔʾ
3.ÓÒÁ¬½Ó£ºright join »ò right outer join
(1)ÓÒÏòÍâÁª½ÓÊÇ×óÏòÍâÁª½ÓµÄ·´ÏòÁª½Ó¡£½«·µ»ØÓÒ±íµÄËùÓÐÐС£Èç¹ûÓÒ±íµÄijÐÐÔÚ×ó±íÖÐûÓÐÆ¥ÅäÐУ¬Ôò½«Îª×ó±í·µ»Ø¿ÕÖµ¡£
(2)sqlÓï¾ä
select * from table1 right join table2 on table1.id=table2.id
-------------½á¹û-------------
id name id score
------------------------------
1 lee 1 90
2 zhang 2 100
NULL NULL 3 70
------------------------------
×¢ÊÍ£º°üº¬table2µÄËùÓÐ×Ӿ䣬¸ù¾ÝÖ¸¶¨Ìõ¼þ·µ»Øtable1ÏàÓ¦µÄ×ֶΣ¬²»·ûºÏµÄÒÔnullÏÔʾ
4.ÍêÕûÍⲿÁª½Ó:full join »ò full outer join


Ïà¹ØÎĵµ£º

MySQL ×Ö·û¼¯µ¼ÖÂSQLÁ¬½ÓÖ®ºóÖÐÎÄÂÒÂëµÄÎÊÌ⣡

character-set-server = GB2312
collation-server = latin1_general_ci
MySQL×Ö·û¼¯ GBK¡¢GB2312¡¢UTF8Çø±ð ½â¾ö MYSQLÖÐÎÄÂÒÂëÎÊÌâ ÊÕ²Ø
MySQLÖÐÉæ¼°µÄ¼¸¸ö×Ö·û¼¯
character-set-server/default-character-set£º·þÎñÆ÷×Ö·û¼¯£¬Ä¬ÈÏÇé¿öÏÂËù²ÉÓõġ£
character-set-database£ºÊý¾Ý¿â×Ö·û¼¯¡£
character-set-table£ºÊ ......

ÇáËɵ¼Èëµ¼³öSQLµÇ¼ÕʺÅ

1¡¢ÔÚÐèµ¼³öµÇ¼ÕʺŵÄSQL·þÎñÆ÷ÉÏÖ´ÐÐÒÔϲéѯÓï¾ä£º
USE master
GO
IF OBJECT_ID ('sp_hexadecimal') IS NOT NULL
DROP PROCEDURE sp_hexadecimal
GO
CREATE PROCEDURE sp_hexadecimal
@binvalue varbinary(256),
@hexvalue varchar(256) OUTPUT
AS
DECLARE ......

ÔÚsql server 2005À¸ù¾ÝÊý¾Ý¿âÐÔÄܶ¯Ì¬¹¹½¨Ë÷Òý¡£

ÔÚsql server 2005À¸ù¾ÝÊý¾Ý¿âÐÔÄܶ¯Ì¬¹¹½¨Ë÷Òý¡£
Êý¾Ý¿âÉè¼ÆºÃºó£¬ÏµÍ³ÉÏÏßÔ˶¯Ò»¸öÖÜÆÚºó£¬Êý¾Ý¿âÐÔÄÜÆ¿¾±Í»ÏÖ³öÀ´£¬Õâ¸öʱ¼ä£¬ÐèÒªÒ»ÖÖ¸ù¾ÝÐÔÄÜ£¬À´¶¯Ì¬¹¹½¨Ë÷Òý£¬Ìá¸ß²éѯЧÂÊ¡£
    --¹ý³ÌÓÅ»¯SQL
                  &nb ......

sql join on Ó÷¨

A left join B µÄÁ¬½ÓµÄ¼Ç¼ÊýÓëA±íµÄ¼Ç¼Êýͬ
A right join B µÄÁ¬½ÓµÄ¼Ç¼ÊýÓëB±íµÄ¼Ç¼Êýͬ
A left join B µÈ¼ÛB right join A
table A:Field_K, Field_A1     a3     b4     ctable B:Field_K, Field_B1     x2  &nbs ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ