¸ù¾ÝÓû§sessionÀïµÄID,²éµÃ¸ÃÓû§µÄËùÓж©¹ºÃ÷ϸ
¶©µ¥±í½á¹ûÈçÏÂ
id signup_number products
1 2009001213 2,3,5,7
2 2009001213 2,3,5
3 2009001213 2
4 2009001557 4,5,6
5 2009001557 4,5
----------------------------------------
´Ë±í²»ÊÇÎÒÉè¼ÆµÄ,ѯÎʺóµÃÖª,
ͬһÕŵ¥×Ó ±ÈÈç2009001213, ÈýÌõ¼Ç¼,´ú±í2ºÅÉÌÆ·¶©ÁË3¸ö,3ºÅÉÌÆ·¶¨ÁË2¸ö,5ºÅ2¸ö,7ºÅÒ»¸ö
ͬÀí,1557µÄµ¥×Ó 4ºÅÉÌÆ·¶©ÁË2¸ö 5ºÅ2¸ö 6ºÅ1¸ö
¶ÔÓ¦µÄ±àºÅÔÚ²úÆ·±íÀï¿ÉÒԲ鵽ÉÌÆ·µÄÃû×Ö¼Û¸ñ »¹¿ÉÒÔͳ¼Æ³öÿÕŶ©µ¥¸÷¸öÉÌÆ·ÊýÁ¿ÊǶàÉÙ
ÓÖÊDzð·Ö
ȱÉÙ²úÆ·±í½á¹¹+²úÆ·±íÊý¾Ý+ÏëÒªµÄ½á¹û
Èç¹ûÓвúÆ·±í¾Í²»ÓòðÖ±½ÓEXITTS·Ö×éÐÐÁË
ÉÌÆ·±í
»ù±¾µÄID ÉÌÆ·Ãû×Ö ¼Û¸ñ
SQL code:
--> ²âÊÔÊý¾Ý£º[TB]
if object_id('[TB]') is not null drop table [TB]
create table [TB]([id] int,[signup_number] int,[products] varchar(7))
insert [TB]
select 1,2009001213,'2,3,5,7' union all
select 2,2009001213,'2,3,5' union all
select 3,2009001213,'2' union all
select 4,2009001557,'4,5,6' union all
select 5,2009001557,'4,5'
select * from [TB]
select signup_number,
products=substring(a.products,b.number,charindex
¸÷λ´óÏÀ£¬ÔÚsql server2000 ÖУ¬ÈçºÎµ¼Èë±í£¬ËûÀïÃæµÄ½á¹¹¶¼²»·¢Éú±ä»¯£¬ÏñË÷Òý£¬Ö÷¼üµÈ»¹ÊÇÔÀ´±íÀïµÄÉèÖã¬Èç¹ûÉú³Ésql½Å±¾µÄ»°£¬ÔÚ²éѯ·ÖÎöÆ÷ÀïÖ´ÐÐÒ»´Î£¬Ö÷¼üË÷Òý¶¼Ã»ÁË£¬ÓÐûÓкõİ취
±¸·Ý»¹Ô»òÕ߸½¼ÓÊÇΨ ......