SQL JOINÖ®ÍêÈ«Ó÷¨
×î½üÔÚ×ömysqlµÄÐÔÄÜÓÇ»¯£¬×öµ½¶à±íÁ¬½Ó²éѯ£¬±È½ÏÍ·ÌÛ£¬¿´ÁËһЩjoinµÄ×ÊÁÏ£¬ÖÕÓڸ㶨£¬ÕâÀï·ÖÏí³öÀ´£¡
ÍâÁª½Ó¡£ÍâÁª½Ó¿ÉÒÔÊÇ×óÏòÍâÁª½Ó¡¢ÓÒÏòÍâÁª½Ó»òÍêÕûÍⲿÁª½Ó¡£
ÔÚ from ×Ó¾äÖÐÖ¸¶¨ÍâÁª½Óʱ£¬¿ÉÒÔÓÉÏÂÁм¸×鹨¼ü×ÖÖеÄÒ»×éÖ¸¶¨£º
LEFT JOIN »ò LEFT OUTER JOIN¡£
×óÏòÍâÁª½ÓµÄ½á¹û¼¯°üÀ¨ LEFT OUTER ×Ó¾äÖÐÖ¸¶¨µÄ×ó±íµÄËùÓÐÐУ¬¶ø²»½ö½ö
ÊÇÁª½ÓÁÐËùÆ¥ÅäµÄÐС£Èç¹û×ó±íµÄijÐÐÔÚÓÒ±íÖÐûÓÐÆ¥ÅäÐУ¬ÔòÔÚÏà¹ØÁªµÄ½á¹û¼¯ÐÐÖÐ
ÓÒ±íµÄËùÓÐÑ¡ÔñÁбíÁоùΪ¿ÕÖµ¡£
RIGHT JOIN »ò RIGHT OUTER JOIN¡£
ÓÒÏòÍâÁª½ÓÊÇ×óÏòÍâÁª½ÓµÄ·´ÏòÁª½Ó¡£½«·µ»ØÓÒ±íµÄËùÓÐÐС£Èç¹ûÓÒ±íµÄijÐÐÔÚ×ó±í
ÖÐûÓÐÆ¥ÅäÐУ¬Ôò½«Îª×ó±í·µ»Ø¿ÕÖµ¡£
FULL JOIN »ò FULL OUTER JOIN¡£
ÍêÕûÍⲿÁª½Ó·µ»Ø×ó±íºÍÓÒ±íÖеÄËùÓÐÐС£µ±Ä³ÐÐÔÚÁíÒ»¸ö±íÖÐûÓÐÆ¥ÅäÐÐʱ£¬ÔòÁí
Ò»¸ö±íµÄÑ¡ÔñÁбíÁаüº¬¿ÕÖµ¡£Èç¹û±íÖ®¼äÓÐÆ¥ÅäÐУ¬ÔòÕû¸ö½á¹û¼¯Ðаüº¬»ù±íµÄÊý¾Ý
Öµ¡£
½öµ±ÖÁÉÙÓÐÒ»¸öͬÊôÓÚÁ½±íµÄÐзûºÏÁª½ÓÌõ¼þʱ£¬ÄÚÁª½Ó²Å·µ»ØÐС£ÄÚÁª½ÓÏû³ýÓëÁí
Ò»¸ö±íÖеÄÈκÎÐв»Æ¥ÅäµÄÐС£¶øÍâÁª½Ó»á·µ»Ø from ×Ó¾äÖÐÌáµ½µÄÖÁÉÙÒ»¸ö±í»ò
ÊÓͼµÄËùÓÐÐУ¬Ö»ÒªÕâЩÐзûºÏÈκΠWHERE »ò HAVING ËÑË÷Ìõ¼þ¡£½«¼ìË÷ͨ
¹ý×óÏòÍâÁª½ÓÒýÓõÄ×ó±íµÄËùÓÐÐУ¬ÒÔ¼°Í¨¹ýÓÒÏòÍâÁª½ÓÒýÓõÄÓÒ±íµÄËùÓÐÐС£ÍêÕûÍâ
²¿Áª½ÓÖÐÁ½¸ö±íµÄËùÓÐÐж¼½«·µ»Ø¡£
Microsoft® SQL Server™ 2000 ¶ÔÔÚ from ×Ó¾äÖÐÖ¸¶¨µÄÍâ
Áª½ÓʹÓÃÒÔÏ SQL-92 ¹Ø¼ü×Ö£º
Ïà¹ØÎĵµ£º
create PROCEDURE pagelist
@tablename nvarchar(50),
@fieldname nvarchar(50)='*',
@pagesize int output,--ÿҳÏÔʾ¼Ç¼ÌõÊý
@currentpage int output,--µÚ¼¸Ò³
@orderid nvarchar(50),--Ö÷¼üÅÅÐò
@sort int,--ÅÅÐò·½Ê½£¬1±íʾÉýÐò£¬0±íʾ½µÐòÅÅÁÐ
......
SELECT ±íÃû = CASE a.colorder WHEN 1 THEN c.name ELSE '' END,
Ðò = a.colorder,
×Ö¶ÎÃû = a.name,
±êʶ = CASE COLUMNPROPERTY(a.id,a.name, ......
SQL JOIN
SQL join ÓÃÓÚ¸ù¾ÝÁ½¸ö»ò¶à¸ö±íÖеÄÁÐÖ®¼äµÄ¹ØÏµ£¬´ÓÕâЩ±íÖвéѯÊý¾Ý¡£
Join ºÍ Key
ÓÐʱΪÁ˵õ½ÍêÕûµÄ½á¹û£¬ÎÒÃÇÐèÒª´ÓÁ½¸ö»ò¸ü¶àµÄ±íÖлñÈ¡½á¹û¡£ÎÒÃǾÍÐèÒªÖ´ÐÐ join¡£
Êý¾Ý¿âÖеıí¿Éͨ¹ý¼ü½«±Ë´ËÁªÏµÆðÀ´¡£Ö÷¼ü£¨Primary Key£©ÊÇÒ»¸öÁУ¬ÔÚÕâ¸öÁÐÖеÄÿһÐеÄÖµ¶¼ÊÇΨһµÄ¡£ÔÚ±íÖУ¬Ã¿¸öÖ÷¼üµÄ ......
Ò»¡¢NATURAL JOIN£¨×ÔÈ»Á¬½Ó£©
Á½Õűíͨ¹ýNATURAL JOINÁ¬½ÓµÄʱºò£¬Ï൱ÓÚÓиöÒþº¬µÄWHERE×Ӿ䣬¶ÔÁ½ÕűíÖÐͬÃûµÄ¶ÔÓ¦ÁÐÏà±È½Ï¿´ÊÇ·ñÏàµÈ¡£
¶þ¡¢CROSS JOIN£¨´´½¨µÑ¿¨¶û»ý£©
¶ÔÁ½Õűíͨ¹ý½»²æÁªºÏ²úÉúµÚÈýÕÅ·µ»Ø½á¹û¼¯µÄ±í¡£Ï൱ÓÚÆÕͨµÄÁ¬½Ó¡£
Èý¡¢INNER JOIN£ ......
×î½üÔÚѧϰHibernate£¬Êý¾Ý¿âÊÇSQL 2000£¬myEclipse7.5£¬¸ù¾ÝÀý×ÓÅäÖúÃHibernateÖ®ºóÔËÐУ¬³öÏÖ£º
com.microsoft.jdbc.base.BaseDatabaseMetaData.supportsGetGeneratedKeys() Õâ¸ö´íÎ󣬵¹ÌÚ°ëÌìÖ®ºó·¢ÏÖÊÇmsbase.jar¡¢mssqlserver.jar¡¢msutil.jarÕâÈý¸ö°üµÄÎÊÌ⣬SQL 2000µÄÊý¾Ý¿âÇý¶¯ÐèÒª×îеİ汾£¬ÕâÈý¸ö°ü¸ ......