Linux ÔËÐеÄʱºò£¬ÊÇÈçºÎ¹ÜÀí¹²Ïí¿â(*.so)µÄ£¿ÔÚ Linux ÏÂÃæ£¬¹²Ïí¿âµÄѰÕҺͼÓÔØÊÇÓÉ /lib/ld.so ʵÏֵġ£ ld.so ÔÚ±ê׼·¾(/lib, /usr/lib) ÖÐѰÕÒÓ¦ÓóÌÐòÓõ½µÄ¹²Ïí¿â¡£
µ«ÊÇ£¬Èç¹ûÐèÒªÓõ½µÄ¹²Ïí¿âÔڷDZê׼·¾£¬ld.so ÔõôÕÒµ½ËüÄØ£¿
Ŀǰ£¬Linux ͨÓõÄ×ö·¨Êǽ«·Ç±ê׼·¾¼ÓÈë /etc/ld.so.conf£¬È»ºóÔËÐÐ ldconfig Éú³É /etc/ld.so.cache¡£ ld.so ¼ÓÔØ¹²Ïí¿âµÄʱºò£¬»á´Ó ld.so.cache ²éÕÒ¡£
´« ͳÉÏ£¬ Linux µÄÏȱ² Unix »¹ÓÐÒ»¸ö»·¾³±äÁ¿ - LD_LIBRARY_PATH À´´¦Àí·Ç±ê׼·¾µÄ¹²Ïí¿â¡£ld.so ¼ÓÔØ¹²Ïí¿âµÄʱºò£¬Ò²»á²éÕÒÕâ¸ö±äÁ¿ËùÉèÖõÄ·¾¡£µ«ÊÇ£¬Óв»ÉÙÉùÒôÖ÷ÕÅÒª±ÜÃâʹÓà LD_LIBRARY_PATH ±äÁ¿£¬ÓÈÆäÊÇ×÷Ϊȫ¾Ö±äÁ¿¡£ÕâЩÉùÒôÊÇ£º
* LD_LIBRARY_PATH is not the answer - http://prefetch.net/articles/linkers.badldlibrary.html
* Why LD_LIBRARY_PATH is bad - http://xahlee.org/UnixResource_dir/_/ldpath.html
* LD_LIBRARY_PATH - just say no - http://blogs.sun.com/rie/date/20040710
½â¾öÕâÒ»ÎÊÌâµÄÁíÒ»·½·¨ÊÇÔÚ±àÒëµÄʱºòͨ¹ý -R<path> Ñ¡ÏîÖ¸¶¨ run-time path¡£
1. Íù/libºÍ/usr/libÀïÃæ¼Ó¶«Î÷£¬ÊDz»ÓÃÐÞ¸Ä/etc/ld.so.confµÄ£¬µ« ......
ORDER BY ×Ӿ䰴һÁлò¶àÁУ¨×î¶à 8,060 ¸ö×Ö½Ú£©¶Ô²éѯ½á¹û½øÐÐÅÅÐò¡£ÓÐ¹Ø ORDER BY ×Ó¾ä×î´ó´óСµÄÏêϸÐÅÏ¢£¬Çë²ÎÔÄ ORDER BY ×Ó¾ä (Transact-SQL)¡£
Microsoft SQL Server 2005 ÔÊÐíÔÚ from ×Ó¾äÖÐÖ¸¶¨¶Ô SELECT ÁбíÖÐδָ¶¨µÄ±íÖеÄÁнøÐÐÅÅÐò¡£ORDER BY ×Ó¾äÖÐÒýÓõÄÁÐÃû±ØÐëÃ÷È·µØ¶ÔÓ¦ÓÚ SELECT ÁбíÖеÄÁлò from ×Ó¾äÖеıíÖеÄÁС£Èç¹ûÁÐÃûÒÑÔÚ SELECT ÁбíÖÐÓÐÁ˱ðÃû£¬Ôò ORDER BY ×Ó¾äÖÐÖ»ÄÜʹÓñðÃû¡£Í¬Ñù£¬Èç¹û±íÃûÒÑÔÚ from ×Ó¾äÖÐÓÐÁ˱ðÃû£¬Ôò ORDER BY ×Ó¾äÖÐÖ»ÄÜʹÓñðÃûÀ´ÏÞ¶¨ËüÃǵÄÁС£
ÅÅÐò¿ÉÒÔÊÇÉýÐòµÄ (ASC)£¬Ò²¿ÉÒÔÊǽµÐòµÄ (DESC)¡£Èç¹ûδָ¶¨ÊÇÉýÐò»¹ÊǽµÐò£¬¾Í¼Ù¶¨Îª ASC¡£
SELECT
[USER_ID],[USER_NAME],[USER_EMAIL],[USER_PASSWORD]
from users where [USER_EMAIL] is not null and [USER_PASSWORD] is not null
--˵Ã÷£ºÑ¡Ôñ´Ó11µ½15µÄ¼Ç¼
select top 5
[USER_ID],[USER_NAME],[USER_EMAIL],[USER_PASSWORD]
from (select top 15 [USER_ID],[USER_NAME],[USER_EMAIL],[USER_PASSWORD] from users
order by [USER_ID] asc) users2
where [USER_EMAIL] is ......
ÏÂÁÐÓï¾ä²¿·ÖÊÇMssqlÓï¾ä£¬²»¿ÉÒÔÔÚaccessÖÐʹÓá£
¡¡¡¡SQL·ÖÀࣺ
¡¡¡¡DDL—Êý¾Ý¶¨ÒåÓïÑÔ(CREATE£¬ALTER£¬DROP£¬DECLARE)
¡¡¡¡DML—Êý¾Ý²Ù×ÝÓïÑÔ(SELECT£¬DELETE£¬UPDATE£¬INSERT)
¡¡¡¡DCL—Êý¾Ý¿ØÖÆÓïÑÔ(GRANT£¬REVOKE£¬COMMIT£¬ROLLBACK)
¡¡¡¡Ê×ÏÈ,¼òÒª½éÉÜ»ù´¡Óï¾ä£º
¡¡¡¡1¡¢ËµÃ÷£º´´½¨Êý¾Ý¿â
CREATE DATABASE database-name
¡¡¡¡2¡¢ËµÃ÷£ºÉ¾³ýÊý¾Ý¿â
drop database dbname
¡¡¡¡3¡¢ËµÃ÷£º±¸·Ýsql server
¡¡¡¡--- ´´½¨ ±¸·ÝÊý¾ÝµÄ device
USE master
EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'
¡¡¡¡--- ¿ªÊ¼ ±¸·Ý
BACKUP DATABASE pubs TO testBack
¡¡¡¡4¡¢ËµÃ÷£º´´½¨Ð±í
create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)
¡¡¡¡¸ù¾ÝÒÑÓÐµÄ±í´´½¨ÐÂ±í£º
A£ºcreate table tab_new like tab_old (ʹÓÃ¾É±í´´½¨Ð±í)
B£ºcreate table tab_new as select col1,col2… from tab_old definition only
¡¡¡¡5¡¢ËµÃ÷£º
¡¡¡¡É¾³ýÐÂ±í£ºdrop table tabname
¡¡¡¡6¡¢ËµÃ÷£º
¡¡¡¡Ôö¼ÓÒ»¸öÁУºAlter table tabname add column col type
¡¡¡¡×¢£ºÁÐÔö¼Óºó½«²»ÄÜɾ³ý¡ ......
ÔÚSQL ServerµÄÐÔÄܵ÷ÓÅÖУ¬ÓÐÒ»¸ö²»¿É±ÈÄâµÄÎÊÌ⣺ÄǾÍÊÇÈçºÎÔÚÒ»¶ÎÐèÒª³¤Ê±¼äµÄ´úÂë»ò±»Æµ·±µ÷ÓõĴúÂëÖд¦ÀíÁÙʱÊý¾Ý¼¯?±í±äÁ¿ºÍÁÙʱ±íÊÇÁ½ÖÖÑ¡Ôñ¡£
¡¡¡¡ÔÚSQL ServerµÄÐÔÄܵ÷ÓÅÖУ¬ÓÐÒ»¸ö²»¿É±ÈÄâµÄÎÊÌ⣺ÄǾÍÊÇÈçºÎÔÚÒ»¶ÎÐèÒª³¤Ê±¼äµÄ´úÂë»ò±»Æµ·±µ÷ÓõĴúÂëÖд¦ÀíÁÙʱÊý¾Ý¼¯?±í±äÁ¿ºÍÁÙʱ±íÊÇÁ½ÖÖÑ¡Ôñ¡£¼ÇµÃÔÚ¸øÒ»¼Ò¹úÄÚÊ×ÇüÒ»Ö¸µÄº£Ô˹«Ë¾×÷SQL ServerÓ¦ÓÃÐÔÄÜÆÀ¹ÀºÍµ÷ÓŵÄʱºò¾Í¿´µ½¹ý´óÁ¿µÄÁÙʱÊý¾Ý¼¯´¦ÀíÐèÇ󣬶øËûÃǵĿª·¢ÈËÔ±¾ÍÎÞ·¨È·¶¨Ê²Ã´Ê±ºòÓÃÁÙʱ±í£¬Ê²Ã´Ê±ºòÓñí±äÁ¿£¬Òò´ËËûÃǾͼòµ¥µÄʹÓÃÁËÁÙʱ±í¡£Êµ¼ÊÉÏÁÙʱ±íºÍ±í±äÁ¿¶¼ÓÐÌØ¶¨µÄÊÊÓû·¾³¡£
¡¡¡¡ÏÈÂôŪһЩ»ù´¡µÄ֪ʶ£º
¡¡¡¡±í±äÁ¿
¡¡¡¡±äÁ¿¶¼ÒÔ@»ò@@Ϊǰ׺£¬±í±äÁ¿ÊDZäÁ¿µÄÒ»ÖÖ£¬ÁíÍâÒ»ÖÖ±äÁ¿±»³ÆÎª±êÁ¿(¿ÉÒÔÀí½âΪ±ê×¼±äÁ¿£¬¾ÍÊDZê×¼Êý¾ÝÀàÐ͵ıäÁ¿£¬ÀýÈçÕûÐÍint»òÕßÈÕÆÚÐÍDateTime)¡£ÒÔ@ǰ׺µÄ±í±äÁ¿ÊDZ¾µØµÄ£¬Òò´ËÖ»ÓÐÔÚµ±Ç°Óû§»á»°ÖвſÉÒÔ·ÃÎÊ£¬¶ø@@ǰ׺µÄ±í±äÁ¿ÊÇÈ«¾ÖµÄ£¬Í¨³£¶¼ÊÇϵͳ±äÁ¿£¬±ÈÈç˵@@error´ú±í×î½üµÄÒ»¸öT-SQLÓï¾äµÄ±¨´íºÅ¡£µ±È»ÒòΪ±í±äÁ¿Ê×ÏÈÊǸö±äÁ¿£¬Òò´ËËüÖ»ÄÜÔÚÒ»¸öBatchÖÐÉú´æ£¬Ò²¾ÍÊÇÎÒÃÇËù˵µÄ±ß½ç£¬³¬³öÁËÕâ¸ö±ß½ç£¬±í±äÁ¿Ò²¾ÍÏûÍöÁË¡£
¡¡¡¡±í±äÁ¿´æ·ÅÔÚÄÚ´æÖУ¬ ......
ÓÃEXPLAIN PLAN ·ÖÎöSQLÓï¾ä
http://blog.csdn.net/kj021320/archive/2006/08/19/1096021.aspx
ÈçºÎÉú³Éexplain plan?
¡¡¡¡½â´ð:ÔËÐÐutlxplan.sql. ½¨Á¢plan ±í
¡¡¡¡Õë¶ÔÌØ¶¨SQLÓï¾ä£¬Ê¹Óà explain plan set statement_id = 'tst1' into plan_table
¡¡¡¡ÔËÐÐutlxplp.sql »ò utlxpls.sql²ì¿´explain plan
EXPLAIN PLAN ÊÇÒ»¸öºÜºÃµÄ·ÖÎöSQLÓï¾äµÄ¹¤¾ß,ËüÉõÖÁ¿ÉÒÔÔÚ²»Ö´ÐÐSQLµÄÇé¿öÏ·ÖÎöÓï¾ä. ͨ¹ý·ÖÎö,ÎÒÃǾͿÉÒÔÖªµÀORACLEÊÇÔõôÑùÁ¬½Ó±í,ʹÓÃʲô·½Ê½É¨Ãè±í(Ë÷ÒýɨÃè»òÈ«±íɨÃè)ÒÔ¼°Ê¹Óõ½µÄË÷ÒýÃû³Æ.
ÄãÐèÒª°´ÕÕ´ÓÀïµ½Íâ,´ÓÉϵ½ÏµĴÎÐò½â¶Á·ÖÎöµÄ½á¹û. EXPLAIN PLAN·ÖÎöµÄ½á¹ûÊÇÓÃËõ½øµÄ¸ñʽÅÅÁеÄ, ×îÄÚ²¿µÄ²Ù×÷½«±»×îÏȽâ¶Á, Èç¹ûÁ½¸ö²Ù×÷´¦ÓÚͬһ²ãÖÐ,´øÓÐ×îС²Ù×÷ºÅµÄ½«±»Ê×ÏÈÖ´ÐÐ.
NESTED LOOPÊÇÉÙÊý²»°´ÕÕÉÏÊö¹æÔò´¦ÀíµÄ²Ù×÷, ÕýÈ·µÄÖ´Ðз¾¶ÊǼì²é¶ÔNESTED LOOPÌṩÊý¾ÝµÄ²Ù×÷,ÆäÖвÙ×÷ºÅ×îСµÄ½«±»×îÏÈ´¦Àí.
ÒëÕß°´:
ͨ¹ýʵ¼ù, ¸Ðµ½»¹ÊÇÓÃSQLPLUSÖеÄSET TRACE ¹¦ÄܱȽϷ½±ã.
¾ÙÀý:
SQL> list
1 SELECT *
2 from dept, emp
3* WHERE emp.deptno = dept.deptno
SQL> set autotrace traceonly /*traceonly ¿ÉÒÔ²»ÏÔʾִÐнá¹û*/
......
¾ÛºÏº¯Êý
MAX(×Ö¶Î)
Çóij×Ö¶ÎÖеÄ×î´óÖµ
MIN(×Ö¶Î)
Çóij×Ö¶ÎÖеÄ×îСֵ
AVG(×Ö¶Î)
Çóij×Ö¶ÎÖÐµÄÆ½¾ùÖµ
SUM(×Ö¶Î)
Çóij×Ö¶ÎÖеÄ×ܺÍ
COUNT(×Ö¶Î)
ͳ¼ÆÄ³×ֶηǿռͼÊý
COUNT
(*)
ͳ¼Æ¼Í¼Êý
¾ÛºÏº¯ÊýÁ·Ï°
²éѯProducts±í£¬ËùÓÐUnitPriceÖ®ºÍ
²éѯProducts±í£¬ËùÓиßÓÚ50µÄUnitPriceÖ®ºÍ
²éѯProducts±í£¬ËùÓÐUnitPrice֮ƽ¾ùÖµ
²éѯCustomers±í£¬¹²ÓжàÉÙCustomer
²éѯCustomers±í£¬¹²ÓжàÉÙCountry
²éѯProducts±í£¬UnitPriceµÄ×î´óÖµ
ÈÕÆÚº¯Êý
GETDATE()
×÷Ó㺻ñÈ¡µ±Ç°ÈÕÆÚʱ¼ä
DATEPART(datepart ,
date)
×÷Ó㺻ñÈ¡ÈÕÆÚ»òʱ¼äµÄÒ»²¿·Ö¡£ÓÐÁ½¸ö²ÎÊý£¬date´ú±íÒª±»²Ù×÷µÄÈÕÆÚ¡£datepart´ú±íÒª»ñ
È¡µÄ²¿·Ö¡£
DATEDIFF(datepart , startdate ,
enddate)
×÷Ó㺱ȽÏÁ½¸öÈÕÆÚijһ²¿·ÖµÄ²îÖµ£¬
ͨ³£startdate´ú±í½ÏÔçµÄÈÕÆÚ , enddate´ú±í½ÏÍíµÄ
DATEADD (datepart , number,
date)
×÷ÓãºÔÚdate»ù´¡ÉϼÓÉÏÒ»¶Îʱ¼ä
YEAR(date)
µÈ¼ÛÓ ......