Ëæ»úÑ¡ÔñÐеÄSQLÓï¾ä? ORACLE SQLSERVER ECT.
MySQL:
SELECT column from table
ORDER BY RAND()
LIMIT 1
PostgreSQL:
SELECT column from table
ORDER BY RANDOM()
LIMIT 1
Microsoft SQL Server:
SELECT TOP 1 column from table
ORDER BY NEWID()
IBM DB2
SELECT column, RAND() as IDX
from table
ORDER BY IDX FETCH FIRST 1 ROWS ONLY
Thanks Tim
Oracle:
SELECT column from
( SELECT column from table
ORDER BY dbms_random.value )
WHERE rownum = 1
Thanks Mark Murphy
Feel free to post other example, variations, and SQL statements for other database servers in the comments.
Ïà¹ØÎĵµ£º
oracle Êý¾Ý¿âµÄά»¤
¿ì¹ýÄêÁË£¬¸÷¼Ò¹«Ë¾¶¼Òª×¼±¸·Å¼ÙÁË£¬¸ø×Ô¼ºµÄÊý¾Ý¿â×ö¸öÌå¼ì°É£¬Ð´¸ö±¨¸æÖ®ÀàµÄ£¬ºÇºÇ¡£
¿´Á˸ö±ðÈËдµÄ ÏÈÄÃÀ´´æ×Å ÓпÕ×Ô¼º±à¸ö¡£
ÔØ×ÔoracleÖÐÎļ¼ÊõÂÛ̳¡£´ÓÕûÌåÉϽéÉÜÁËÒ»¸ödbaµÄÖ°ÔðºÍÈÎÎñµÈµÈ¡£¡¡¡¡
ORACLEÊý¾Ý¿â¹ÜÀíÔ±Ó¦°´ÈçÏ·½Ê½¶ÔORACLEÊý¾Ý¿âϵͳ×ö¶¨ÆÚ¼à¿Ø£ ......
select * from test where rownum <=10 ÏÂÃæÊǹØÓÚrownumµÄ½éÉÜ ================================ RownumºÍrow_number() over()µÄʹÓà ROWNUMÊÇOracle´Ó8¿ªÊ¼ÌṩµÄÒ»¸öαÁУ¬ÊǰÑSQL³öÀ´µÄ½á¹û½øÐбàºÅ£¬Ê¼ÖÕ´Ó1¿ªÊ¼£¬³£¼ûµÄÓÃ;¾ÍÊÇÓÃÀ´·ÖÒ³Êä³ö. ±ÈÈç SELECT * from torderdetail a WHERE ROWNUM <= 10 ÕâÌõÓï¾ä¾ ......
°²×°SQL Server2005 ÎÊÌâÐÅÏ¢£º
“SQL Server °²×°³ÌÐòÎÞ·¨»ñÈ¡ ASPNET ÕÊ»§µÄϵͳÕÊ»§ÐÅÏ¢”
½â¾ö°ì·¨£º
ÓÃaspnet_regiisʵÓù¤¾ßÐ¶ÔØºÍÖØÐ°²×°Ò»Ï¾ͿÉÒÔÁË¡£
¾ßÌåµÄ²Ù×÷£º
1¡¢½øÈëCMD£º
C:\windows\microsoft.net\framework\v2.0.50727Îļþ¼ÐÏ£¬ÔËÐÐaspnet_regiis -uÐ¶ÔØ
È»ºóÔËÐÐaspnet_regiis -i Ö ......
ÏÂÁÐÓï¾ä²¿·ÖÊÇMssqlÓï¾ä£¬²»¿ÉÒÔÔÚaccessÖÐʹÓá£
¡¡¡¡SQL·ÖÀࣺ
¡¡¡¡DDL—Êý¾Ý¶¨ÒåÓïÑÔ(CREATE£¬ALTER£¬DROP£¬DECLARE)
¡¡¡¡DML—Êý¾Ý²Ù×ÝÓïÑÔ(SELECT£¬DELETE£¬UPDATE£¬INSERT)
¡¡¡¡DCL—Êý¾Ý¿ØÖÆÓïÑÔ(GRANT£¬REVOKE£¬COMMIT£¬ROLLBACK)
¡¡¡¡Ê×ÏÈ,¼òÒª½éÉÜ»ù´¡Óï¾ä£º
¡¡¡¡1¡¢ËµÃ÷£º´´½¨Êý¾Ý¿â
......