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

ʵÀý·ÖÎöSQLÖгý·¨µÄÈýÖÖд·¨

Ê×ÏÈÇë¿´
http://topic.csdn.net/u/20070821/15/8a2dac05-51b8-4eb1-b41d-4fbe8a232c85.html
ÌûÖдÓʵ¼ÊÎÊÌâ³ö·¢£¬ÌÖÂÛSQLÓï¾äÖÐÈçºÎ±íʾ³ý·¨ÔËËã¡£
 
ÒÔÏÂÊÇÎÊÌâµÄ¸ø³öÓë¼òÒªÃèÊö£º
 ±íA£ºÉ̵êÐÅÏ¢
ANO, ANAME, WQTY, CITY
101, ɨɽÊéµê, 15, ³¤É³
204, ǰÃÅÉ̵ê, 89, ±±¾©
256, ¶«·çÉ̳¡, 501, ±±¾©
345, ÌúµÀÉ̵ê, 76, ³¤É³
620, Î人É̳¡, 413, Î人
±íB£ºÉÌÆ·ÐÅÏ¢
BNO, BNAME, PRICE
1, ë±Ê, 21
2, ÓðëÇò, 4
3, ÊÕÒô»ú, 325
4, Êé°ü, 242
±íAB£ºÉ̵ê-ÉÌÆ·¶ÔÓ¦¹ØÏµ
ANO, BNO, QTY
101, 1, 105
101, 2, 42
101, 3, 25
101, 4, 104
204, 3, 61
256, 1, 241
256, 2, 91
345, 1, 141
345, 2, 18
345, 4, 74
620, 4, 125

ÏÖÔÚÒªÕÒ³öÖÁÉÙ¹©Ó¦´úºÅΪ256µÄÉ̵êËù¹©Ó¦µÄÈ«²¿ÉÌÆ·µÄÉ̵ê´úºÅANO£¬Ö»Éæ¼°µ½±íAB¡£Õâ¸öSQLÓï¾ä¸ÃÔõôд£¿
¾ßÌå˵£¬ÎÒÒѾ­ÖªµÀ¹ØÏµ±í´ïʽÊÇ£º
π ano, bno (AB) ÷ π bno (σ ano = 256 (AB));
ÎÒµÄÎÊÌâÊÇ£ºÈçºÎ°ÑÕâÀïµÄ³ý·¨ÔËËãת»¯ÎªSQLÓï¾äÄØ£¿   
 
È»ºóÏÂÃæÓкܶàµÄ»Ø´ð£¬ÔÚÕâÀïÎҾͲ»Ò»Ò»ÁгöÁË¡£
Ïȸø³öÎҵIJâÊÔDDLÓëSQLÓï¾ä¡£
 
--DDL:
CREATE TABLE AB(
ANO INT,
BNO INT,
QTY INT
);
INSERT INTO AB VALUES ( 101, 1, 105 );
INSERT INTO AB VALUES ( 101, 2, 42 );
INSERT INTO AB VALUES ( 101, 3, 25 );
INSERT INTO AB VALUES ( 101, 4, 104 );
INSERT INTO AB VALUES ( 204, 3, 61 );
INSERT INTO AB VALUES ( 256, 1, 241 );
INSERT INTO AB VALUES ( 256, 2, 91 );
INSERT INTO AB VALUES ( 345, 1, 141 );
INSERT INTO AB VALUES ( 345, 2, 18 );
INSERT INTO AB VALUES ( 345, 4, 74 );
INSERT INTO AB VALUES ( 620, 4, 125 );
--SQL:
--1¡¢Õýͳ×ö·¨£º
SELECT DISTINCT ANO from AB
WHERE ANO NOT IN (
SELECT ANO from (
SELECT ANO,BNO from (
SELECT ANO from AB
) AS r1 CROSS JOIN (
SELECT BNO from AB
WHERE ANO = 256
) AS s1
) AS rs1
WHERE CHECKSUM(ANO,BNO)


Ïà¹ØÎĵµ£º

SQL²Ù×÷È«¼¯

SQL²Ù×÷È«¼¯

ÏÂÁÐÓï¾ä²¿·ÖÊÇMssqlÓï¾ä£¬²»¿ÉÒÔÔÚaccessÖÐʹÓá£

SQL·ÖÀࣺ
DDL—Êý¾Ý¶¨ÒåÓïÑÔ(CREATE£¬ALTER£¬DROP£¬DECLARE)
DML—Êý¾Ý²Ù×ÝÓïÑÔ(SELECT£¬DELETE£¬UPDATE£¬INSERT)
DCL—Êý¾Ý¿ØÖÆÓïÑÔ(GRANT£¬REVOKE£¬COMMIT£¬ROLLBACK)

Ê×ÏÈ,¼òÒª½éÉÜ»ù´¡Óï¾ä£º
1¡¢ËµÃ ......

SQL Server Ë÷Òý½á¹¹¼°ÆäʹÓ㨶þ£©

¸ÄÉÆSQLÓï¾ä
¡¡¡¡ºÜ¶àÈ˲»ÖªµÀSQLÓï¾äÔÚSQL SERVERÖÐÊÇÈçºÎÖ´Ðеģ¬ËûÃǵ£ÐÄ×Ô¼ºËùдµÄSQLÓï¾ä»á±»SQL SERVERÎó½â¡£±ÈÈ磺
select * from table1 where name=''zhangsan'' and tID > 10000
ºÍÖ´ÐÐ:
select * from table1 where tID > 10000 and name=''zhangsan''
¡¡¡¡Ò»Ð©È˲»ÖªµÀÒÔÉÏÁ½ÌõÓï¾äµÄÖ´ÐÐЧÂÊÊÇ·ñÒ» ......

Sql Server 2005 row_number()·ÖÒ³ÐÔÄܲâÊÔ

  ÏÖÔÚ·ÖÒ³·½·¨´ó¶à¼¯ÖÐÔÚselect top/not in/Óαê/row_number£¬¶øselect top·ÖÒ³(ÔÚÕâ»ù´¡ÉÏ»¹Óжþ·Ö·¨)·½·¨Ëƺõ¸üÊÜ´ó¼Ò»¶Ó­£¬ÕâÆªÎÄÕ²¢²»´òËãÈ¥ÌÖÂÛÊÇ·ñͨÓõÄÎÊÌ⣬±¾×ÅʵÓõÄÔ­Ôò£¬»¨ÁËһЩʱ¼äÈ¥²âÊÔrow_number()·ÖÒ³µÄÐÔÄÜ£¬¸Ð¾õ²¢²»ÏñÒ»²¿·ÖÈËËù˵µÄÄÇô¼¦Àߣ¬ÓÉÓÚ½Ó´¥Èí¼þ¿ª·¢²ÅÊ®¸öÔ£¬·½·½ÃæÃæµÄ¶«Î÷¶¼ÒªÑ§ ......

SQL Server 2005 ³öÏÖµ½Ö÷»ú µÄ TCP/IP Á¬½Óʧ°Ü

ÓÃjdbcÁ¬½ÓSQL Server2005³öÏÖµ½Ö÷»ú µÄ TCP/IP Á¬½Óʧ°Ü¡£ java.net.ConnectException: Connection refused: connect!
¹À¼ÆÊÇÒòΪsqlserver2005ĬÈÏÇé¿öÏÂÊǽûÓÃÁËtcp/ipÁ¬½Ó¡£
Äú¿ÉÒÔÔÚÃüÁîÐÐÊäÈ룺telnet localhost 1433½øÐмì²é£¬Õâʱ»á±¨´í£ºÕýÔÚÁ¬½Óµ½localhost...²»ÄÜ´ò¿ªµ½Ö÷»úµÄÁ¬½Ó£¬ÔÚ¶Ë¿Ú 1433: Á¬½Óʧ°Ü
Æ ......

SQLÖÐexistsºÍinµÄÇø±ð

¼ÙÉèÈçÏÂÓ¦Óãº
Á½Õű헗Óû§±íTDefUser£¨userid£¬address,phone£©ºÍÏû·Ñ±íTAccConsume(userid,time,amount)£¬ÐèÒª²éÏû·Ñ³¬¹ý5000µÄÓû§¼Ç¼¡£
ÓÃexists:
select * from TDefUser
where exists (select 1 from TAccConsume where TDefUser.userid=TAccConsume.userid and TAccConsume.amount>5000)
ÓÃi ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ