Çë½Ì¸öSQL²éѯÎÊÌâ - Oracle / ¿ª·¢
ÎÒÏÖÔÚÓÐÒ»Õűí ÀïÃæÓÐÁ½Ìõ¼Ç¼
name time
ÕÅ 3
Íõ 2
ÏÖÔÚÎÒÏëÒªµÃµ½µÄ½á¹ûÊÇtimeÊǼ¸¾Í»á²éѯ³ö¼¸Ìõ
name time
ÕÅ 1
ÕÅ 1
ÕÅ 1
Íõ 1
Íõ 1
Ôõô×ö
-- ÕâÑùÕû£ºÓÐÒâÒåÂð£¿
µ±È»ÓÐÒâÒåÁË£¬ÎÒÄõıíÖ»²»¹ýÊǾٸöÀý×Ó£¬Êµ¼ÊÓô¦µ±È»ÓÐÁË¡£ÎÒÔÚÕâÀïÖ»²»¹ýÊǰÑÀý×ÓÃèÊöµÄ¼ò»¯ÁË¡£
ºóÃæµÄtime×ֶνá¹ûÊǼ¸¶¼²»Ëùν£¬²»ÊÇ1Ò²ÐУ¬
ÕÅ 3
Íõ 2
ÏÖÔÚÎÒÏëÒªµÃµ½µÄ½á¹ûÊÇtimeÊǼ¸¾Í»á²éѯ³ö¼¸Ìõ
name time
ÕÅ 3
ÕÅ 3
ÕÅ 3
Íõ 2
Íõ 2
ÕâÑù¿ÉÄÜ»á¼òµ¥µã£¬Çë½Ì¸ßÊÖÀ´°ï°ïæ°¡
4Â¥£¬5Â¥µÄ·¢·¨¶¼¿ÉÒÔ£¬µ«ÊÇÎÒÕâ²éѯ½á¹ûÓÐ5000Ìõ×óÓÒ£¬Ö´ÐÐÁË20·ÖÖÓ»¹Ã»²é³öÀ´¡£¡£
¸Õ¸ÕÄǸöSQLµÄЧÂʵÄÈ·²»ºÃ£¬ÊÔÏÂÕâ¸ö
SQL code:
select a.name, a.time
from tb a,
(SELECT level l
from (select max(time) maxtime from tb)
CONNECT BY level <= maxtime) b
where a.time >= b.l
order by a.name
Ïà¹ØÎÊ´ð£º
ÎÒÔÚ¿ª·¢µÄÕâ¸öÓ¦Óò¢·¢ÐԱȽϸߣ¬oracle¸üÐÂÊý¾ÝʱºòÈçºÎ´¦Àí²¢·¢´¦ÀíÄØ£¿¸÷λ´óÏÀ·¢±íºÃµÄ¹Ûµã°¡£¬ÔÚÏߵȴý£¡
oracleÊý¾Ý¸üÐÂʱ£¬»á×Ô¶¯Ä¬ÈÏÐÐËø¶¨£¬Â¥Ö÷²»Òª²ÙÐÄ£¬Oracle¶Ô²¢Ðд¦ÀíÒѾºÜ³ÉÊìÁË
ÒýÓÃ
oracle ......
tab1 ×Ö¶Î:billdate,goodsid,incount,inmoney,outcount,outmoney,endprice,endcount,endamt
tab2 ×Ö¶Î:goodsid,goodskind£¨ÉÌÆ·ÀàÐÍ£©
tab3 ×Ö¶Î:goodskind£¨ÉÌÆ·ÀàÐÍ£©,kindname
½á¹û£º
µÃµ½ÉÌÆ·ÀàÐÍÔÚÒ»¶Îʱ¼ä ......
ÕâÀïÏëÁ˽âÏ£¬¹ØÓÚSQL ServerÖзÖÒ³ºÍOracleÖзÖÒ³£»
ƽ³£Ð´Ó¦ÓóÌÐòµÄʱºò£¬±ÈÈçÓõÄÓïÑÔÊÇJava£¬ÓиöÁбíÒ³Ãæ£¬ÐèÒª¶ÔÊý¾Ý·ÖÒ³ÏÔʾ£»
ÕâÀïÒª·ÖÒ³ÄѵÀ²»ÐèÒª½èÖúJava£¬¶øÖ±½ÓsqlÄÜÖªµÀ·ÖÒ³Âð£¬ÆðÂëÒ²Òª´«¸öÒ³Âë½ ......
ͨ¹ýNAME×Ö¶ÎÌõ¼þ²éѯһ¸öÊý¾Ý±í£¬¼ÙÉèÎÒÓÐ100¸öÐÕÃû£¬ÓÐÒÔÏÂÁ½¸ö·½·¨£¬
·½·¨1£º
°Ñ100¸öName ×é³ÉÒ»¸öSQLÓï¾ä£¬±ÈÈç Select * from tmp_table where Name='ÕÅÈý' or Name ='ÀîËÄ' Or ...Or Name='µÚÒ»°Ù¸öÐÕÃû'
......