SQL ServerË÷Òýͳ¼ÆÐÅϢδ¼°Ê±¸üУ¬µ¼ÖÂÅÅÐò»ìÂÒ
½ñÌ죬Óöµ½ÁËÕâÑùµÄÒ»¸öÀý×Ó£º
SQL ServerË÷Òýͳ¼ÆÐÅϢδ¼°Ê±¸üУ¬µ¼ÖÂÅÅÐò»ìÂÒ
ÎÒÃÇÖªµÀ£¬ÔÚsql
serverÉÏ´´½¨Ë÷Òýºó£¬Í¬Ê±»á¶Ô¸ÃË÷ÒýÉϵÄÖµ½øÐÐÅÅÐò£¬µ«¶ÔÓÚÐÂÔö¼ÓµÄÖµ£¬Èç¹ûδÄܼ°Ê±¸üÐÂͳ¼ÆÐÅÏ¢£¬½«ÓпÉÄܵ¼ÖÂÅÅÐòµÄ»ìÂÒ£¬Ò²¾ÍÊÇûÓÐÅÅÐò¡£
ÕâÊDzúÉúÎÊÌâµÄÓï¾ä£º
Select * from V_L_IcStockProInEntry Where FInterID= '329482'
V_L_IcStockProInEntryÊÇÒ»¸öÊÓͼ£¬ÆäÓï¾äÈçÏ£º
SELECT t2.FInterID, t2.FSeq,
t2.FItemID, t2.FMustQty, t2.FQty
from dbo.IcStockProIn AS t1 INNER JOIN
dbo.
IcStockProInEntry
AS t2 ON t1.FInterID = t2.FInterID LEFT OUTER JOIN
dbo.t_IcItem AS t3 ON t2.FItemID = t3.FItemID LEFT OUTER JOIN
dbo.IcProductTrace AS d ON t2.FTraceInterid = d.FInterID LEFT OUTER
JOIN
dbo.t_IcItemPrimary AS e ON d.FMainItemID = e.FItemID LEFT OUTER JOIN
dbo.t_EventType AS t10 ON t2.FQulityID = t10.FID LEFT OUTER JOIN
dbo.t_Customer AS h ON t2.FCustID = h.FID LEFT OUTER JOIN
dbo.V_WorkItem AS i ON t2.FStWorkItemID = i.FitemID LEFT OUTER JOIN
dbo.IcShopMo
AS G ON
G.FinterID = t2.FSourceInterID
²éѯµÄ½á¹ûÊÇfinterid¶ÔÓ¦µÄ¶à¸öfseqֵδÄÜÕý³£ÅÅÐò¡£
finteridºÍfseq
ÊôÓÚicstockproinentry±íµÄÁУ¬ÔÚÕâÁ½ÁÐÉÏÓиö¾Û¼¯Ë÷Òý£¬ËùÒÔ»á×Ô¶¯µÄÅÅÐò¡£µ«ÓÉÓÚÊý¾Ý¸üнϿ죬вåÈëµÄֵδÄܼ°Ê±ÓÐЧÅÅÐò£¬ËùÒÔµ¼ÖÂ
ÁËÅÅÐòµÄ»ìÂÒ¡£
Ê×ÏÈÀ´¿´ÏÂͳ¼ÆÐÅÏ¢£º
dbcc show_statistics('IcStockProInEntry',PK_IcStockProInEntry)
RANGE_HI_KEY RANGE_ROWS EQ_ROWS DISTINCT_RANGE_ROWS
AVG_RANGE_ROWS
3 0 1 0 1
...
....
282987 101155 6 27942 3.620178
288803 18440 1 5253 3.510375
296886 24587 6 &nb
Ïà¹ØÎĵµ£º
¿ÉÒÔ¶¨ÒåÒ»¸öÎÞÂÛºÎʱÓÃINSERTÓï¾äÏò±íÖвåÈëÊý¾Ýʱ¶¼»áÖ´ÐеĴ¥·¢Æ÷¡£
¡¡¡¡µ±´¥·¢INSERT´¥·¢Æ÷ʱ£¬ÐµÄÊý¾ÝÐоͻᱻ²åÈëµ½´¥·¢Æ÷±íºÍinserted±íÖС£inserted±íÊÇÒ»¸öÂß¼±í£¬Ëü°üº¬ÁËÒѾ²åÈëµÄÊý¾ÝÐеÄÒ»¸ö¸±±¾¡£inserted±í°üº¬ÁËINSERTÓï¾äÖÐÒѼǼµÄ²åÈ붯×÷¡£inserted±í»¹ÔÊÐíÒýÓÃÓɳõʼ»¯INSERTÓï¾ä¶ø²úÉúµÄÈÕÖ¾Êý¾Ý ......
ÔÚVisual Studio 2008 ÖÐʹÓÃO/RÉè¼ÆÆ÷£º
µãÌí¼ÓÏîÄ¿£¬Ñ¡Ôñ´´½¨Linq to SQLÏîÄ¿£¬Ê¹Ó÷þÎñÆ÷×ÊÔ´¹ÜÀíÆ÷Á¬½ÓNorthwindÊý¾Ý¿â£¬½«CustomersºÍOrdersÁ½¸ö±íÍϵ½Éè¼Æ½çÃæÉÏ£¬ÏµÍ³»á×Ô¶¯´´½¨app.configºÍNorthwid.designer.cs,Ç°ÕßÊÇÅäÖÃÁ¬½ÓÊý¾Ý¿âµÄÁ¬½Ó×Ö´®£»ºóÕß»áÉú³ÉÒ»¸ö¼Ì³Ð×ÔDataContextµÄÀࣺNorthwindDataContext¡£
......
SQL×¢Èë¹¥»÷
¡¡¡¡SQL×¢Èë¹¥»÷ÊǺڿͶÔÊý¾Ý¿â½øÐй¥»÷µÄ³£ÓÃÊÖ¶ÎÖ®Ò»¡£Ëæ×ÅB/SģʽӦÓÿª·¢µÄ·¢Õ¹£¬Ê¹ÓÃÕâÖÖģʽ±àдӦÓóÌÐòµÄ³ÌÐòÔ±Ò²Ô½À´Ô½¶à¡£µ«ÊÇÓÉÓÚ³ÌÐòÔ±µÄˮƽ¼°¾ÑéÒ²²Î²î²»Æ룬Ï൱´óÒ»²¿·Ö³ÌÐòÔ±ÔÚ±àд´úÂëµÄʱºò£¬Ã»ÓжÔÓû§ÊäÈëÊý¾ÝµÄºÏ·¨ÐÔ½øÐÐÅжϣ¬Ê¹Ó¦ÓóÌÐò´æÔÚ°²È«Òþ»¼¡£Óû§¿ÉÒÔÌá½»Ò»¶ÎÊý¾Ý¿â²éѯ´ú ......
--1.¹ØÓÚwhereɸѡÆ÷ÖгöÏÖÖ¸¶¨ÐÇÆÚ¼¸µÄÇó½â
SQL code
--»·¾³
create table test_1
(
id int,
value varchar(10),
t_time datetime
)
insert test_1
select 1,'a','2009-04-19' union
select 2,'b','2009-04-20' union
select 3,'c','2009-04-21' union
select 4,'d','2009-04-22' union
s ......
merge [target] t
using [source] s on t.id = s.id
when matched then update t.name = s.name, t.age = s.age -- use "rowset1"
when not matched then insert values(id,name,age) -- use "rowset2"
when source not matched then delete; -- use "rowset3"
MERGE dbo.table AS im ......