ئىنتىل سەيناسى

 پارول قايتۇرىۋېلىش
 تىزىملىتىش
ئىزدەش
قىزىق سۆزلەر: مۇسابىقە chrome excel word ps
جەمئىي مىكروبلوگ 340 تال  

مىكروبلوگ[ يېڭى | 24 سائەت | 7 كۈن | 30 كۈن ]

  • dartman 2016-2-24 16:55 [ئىنكاس(0)] [...]

    مۇنبەردىكى pinhan1122 ئىسىملىك تورداشنىڭ چ چ ياكى ئۈندىدار نۇمۇرنى بىلىدىغانلا....

  • dighar 2015-12-30 23:06 [ئىنكاس(0)] [...]

    يېڭى يىلىڭلارغا مۇبارەك بولسۇن! تىنىڭلار سالامەت، ئائىلىڭىز بەخىتلىك بو.....

  • maarip 2015-11-22 11:51 [ئىنكاس(0)] [...]

    ئىنتىل قاچانمۇ نورماللىشار ھە! قايسى تېمىنى ئاچسا Discuz! Database Error مۇشۇ خەت!

  • shahzade 2015-9-6 12:10 [ئىنكاس(0)] [...]

    تىل ئۇگۈنەي دىگەن

  • adminbiz 2015-8-1 01:25 [ئىنكاس(0)] [...]

    ئەسسالامۇ ئەلەيكۇم

  • XADIMAN 2014-10-5 00:09 [ئىنكاس(0)] [...]

    قوربان ھېيتىڭلارغا مۇبارەك بولسۇن !!!!!!

  • Intil 2013-12-15 21:21 [ئىنكاس(0)] [...]

    Atush ئەپەندىمنىڭ تۇغۇلغان كۈنى ( 2013-12-18 ) گە مۇبارەك ، ئاتا- ئانىڭىزنىڭ ئۆمرى ئۇزۇن بولغااي!    

كۆرۈش: 844|ئىنكاس: 2

دەسلەپكى ئۆگەنگۈچىلەر ئۈچۈن 15 SQL ئىزدەش جۈملىسى

  [ئۇلانما كۆچۈرۈش]
ۋاقتى: 2014-10-10 20:19:59 | ھەممە قەۋەتنى كۆرۈش |كۆرۈش شەكلى
بۇ يازمىنى ئاخىرىدا   mouse تەھرىرلىگەن. ۋاقتى  2014-10-10 20:22  

1. جەدىۋەل قۇرۇش ۋە قىستۇرۇش
بىز مەلۇمات جەدىۋىلى ۋە مەلۇمات جەدىۋىلىگە ئۇچۇر يېزىشنى باشلاشتىن بۇرۇن،بىز بۇ جەدىۋەللەرنى ئۆزىمىزنىڭ تۈرلەردە ئىشلەتسەك بولىدۇ.مەن ئىشلەتكۈچىلەرنىڭ ياخشى چۈشىنىشى ئۈچۈن رېئال جەدىۋەل لەيىھەسىنى چۈشەندۈرۈشنى ئويلاشتىم. ساندان لاىيھەسىدە، ناھايىتى مۇھىم بولغان بىر قائىدە بولسا ئاساسىي توپچا ۋە سىرتقى توپچىنىڭ مۇناسىۋىتى توغرا نورمال بولغان جەدىۋەل قۇرۇش. ھازىر بىر ئاشخانا تاماق بۇيرۇتۇشنى باشقۇرۇش مەلۇمات جەدىۋىلىنى قۇرايلى. بۇ ماقلىدا بىز Order Master،Order Detail ۋە Item Master نى ئاساسىي جەدىۋەل قىلغان ئۈچ جەدىۋەلنى قۇرۇپ ئىشلىتىمىز.باشتا بىز جەدىۋەل قۇرۇشتىن باشلىدۇق.ئۈستىدە ئېيىتىپ ئۆتكىنىمدەك، بىز Item Master نى ئاساسىي جەدىۋەل قىلىپ قۇرۇشتىن باشلايمىز، ئىسمىدىنلا كۆرۈۋېلىشقا بولىدۇكى بۇ جەدىۋەل ئوبيېكىتلارنى ساقلاش ئۈچۈن ئىشلىتىلىدۇ.
جەدىۋەل قۇرۇش
Item Master:ئەمدى بىز ئېھتىياجلىق Item Master جەدىۋىلىنى قۇرىمىز.مەن ئاللىبۇرۇن ئۆزىمىزنىڭ تۈرىگە مۇناسىۋەلىك پىلان تۈزۈشنىڭ لازىملىقىنى ئېيىتقان ئىدىم. تۈرگە ئۈچۈن چوقۇم قۇرىلىدىغان بارلىق جەدىۋەللەرنى تىزىپ چىقىڭ، ھەربىر جەدىۋەل ئۈچۈن قۇرۇشقا لازىم بولىدىغان ساھەلەرنى تىزىڭ ۋە نېمىگە ئىشلىتىدىغانلىقىنى ئىپادىلەڭ. مەن بۇ يەردە باشقا جەدىۋەللەرنىڭ بۇ ئاساسىي جەدىۋەلدىن پايدىلىنىدىغان Item_Codes نى ئاساسىي توپچا قىلىپ ئىشلەتتىم.
  1. CREATE TABLE [dbo].[ItemMasters](
  2.         [Item_Code] [varchar](20) NOT NULL,
  3.         [Item_Name] [varchar](100) NOT NULL,
  4.         [Price]  Int NOT NULL,
  5.         [TAX1]  Int NOT NULL,
  6.         [Discount]  Int NOT NULL,
  7.         [Description] [varchar](200) NOT NULL,
  8.         [IN_DATE] [datetime] NOT NULL,
  9.         [IN_USR_ID] [varchar](20) NOT NULL,
  10.         [UP_DATE] [datetime] NOT NULL,
  11.         [UP_USR_ID] [varchar](20) NOT NULL,
  12. CONSTRAINT [PK_ItemMasters] PRIMARY KEY CLUSTERED
  13. (
  14.         [Item_Code] ASC
  15. )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
  16. ) ON [PRIMARY]
مەزمۇننى كۆچۈرۈۋېلىش

Item Master غا مەلۇمات قىستۇرۇش
  1. INSERT INTO [ItemMasters]   ([Item_Code],[Item_Name],[Price],[TAX1],[Discount],[Description],[IN_DATE]
  2.            ,[IN_USR_ID],[UP_DATE],[UP_USR_ID])
  3.      VALUES
  4.            ('Item001','Coke',55,1,0,'Coke which need to be cold',GETDATE(),'SHANU'
  5.            ,GETDATE(),'SHANU')

  6. INSERT INTO [ItemMasters]   ([Item_Code],[Item_Name],[Price],[TAX1],[Discount],[Description],[IN_DATE]
  7.            ,[IN_USR_ID],[UP_DATE],[UP_USR_ID])
  8.      VALUES
  9.            ('Item002','Coffee',40,0,2,'Coffe Might be Hot or Cold user choice',GETDATE(),'SHANU'
  10.            ,GETDATE(),'SHANU')

  11. INSERT INTO [ItemMasters]   ([Item_Code],[Item_Name],[Price],[TAX1],[Discount],[Description],[IN_DATE]
  12.            ,[IN_USR_ID],[UP_DATE],[UP_USR_ID])
  13.      VALUES
  14.            ('Item003','Chiken Burger',125,2,5,'Spicy',GETDATE(),'SHANU'
  15.            ,GETDATE(),'SHANU')

  16. INSERT INTO [ItemMasters]   ([Item_Code],[Item_Name],[Price],[TAX1],[Discount],[Description],[IN_DATE]
  17.            ,[IN_USR_ID],[UP_DATE],[UP_USR_ID])
  18.      VALUES
  19.            ('Item004','Potato Fry',15,0,0,'No Comments',GETDATE(),'SHANU'
  20.            ,GETDATE(),'SHANU')
مەزمۇننى كۆچۈرۈۋېلىش

Order Master:بۇ بىر ئاساسىي جەدىۋەل بولۇپ،بۇنىڭدا بىر ئاساسىي رېكورد بولىدۇھەمدە بارلىق قىسمىي رېكوردلار زاكاس تەپسىلاتى قىلىپ ساقلىنىدۇ.
دىققەت:سىز ئاساس ۋە تەپسىلاتنىڭ مەنىسىنى چوقۇم ئايدىڭلاشتۇرىۋېلىشىڭىز كېرەك.ئەگەر سىز ئاساس ۋە تەپسىلاتنىڭ نېمە ئىشلىتىدىغانلىقىنى ئاڭقىرالمىغان بولسىز، ئۇنداقتا مەن سىزگە چۈشەندۈرەي.ئاساس جەدىۋەلدە بىر ئاساسىي رېكورد بولىدۇ، تەپسىلات تا ئاساسىي رېكورتنىڭ بارلىق تەپسىلىي ئۇچۇرلىرى بار بولىدۇ.
مىسال ئۈچۈن مۇنداق دەپ تۇرايلى، مەن ھازىر ئاشخانىغا بېرىپ باشتا،كولا،ھامبۇرگ بولكىسى ۋە ياڭيۇنىڭ ھەرقايسىسىدىن بىردىن بۇيرۇتتۇم.دېمەكچى مەن كۈتكۈچىگە ئۈچ خىل ئوبيېكىت بۇيرۇتتۇم،دېگەنلىك بولىدۇ.شۇڭلاشقا بۇ مېنىڭ "Ord001" دەپ ساقلىنىدىغان Ord_No بولىدۇ، بۇنىڭ ئۈچ ئوبيېكتى بار بولۇپ، شۇڭا بىز ئالدى بىلەن Order Master نى قۇرايلى.
  1. CREATE TABLE [dbo].[OrderMasters](
  2.         [Order_No] [varchar](20) NOT NULL,
  3.         [Table_ID] [varchar](20) NOT NULL,
  4.         [Description] [varchar](200) NOT NULL,
  5.         [IN_DATE] [datetime] NOT NULL,
  6.         [IN_USR_ID] [varchar](20) NOT NULL,
  7.         [UP_DATE] [datetime] NOT NULL,
  8.         [UP_USR_ID] [varchar](20) NOT NULL,
  9. CONSTRAINT [PK_OrderMasters] PRIMARY KEY CLUSTERED
  10. (
  11.         [Order_No] ASC
  12. )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
  13. ) ON [PRIMARY]
مەزمۇننى كۆچۈرۈۋېلىش

Order Masterغا مەلۇمات قىستۇرۇش
  1. INSERT INTO [OrderMasters]
  2.            ([Order_No],[Table_ID] ,[Description],[IN_DATE],[IN_USR_ID],[UP_DATE],[UP_USR_ID])
  3.      VALUES
  4.            ('Ord_001','T1','',GETDATE(),'SHANU' ,GETDATE(),'SHANU')

  5. INSERT INTO [OrderMasters]
  6.            ([Order_No],[Table_ID] ,[Description],[IN_DATE],[IN_USR_ID],[UP_DATE],[UP_USR_ID])
  7.      VALUES
  8.            ('Ord_002','T2','',GETDATE(),'Mak' ,GETDATE(),'MAK')

  9. INSERT INTO [OrderMasters]
  10.            ([Order_No],[Table_ID] ,[Description],[IN_DATE],[IN_USR_ID],[UP_DATE],[UP_USR_ID])
  11.      VALUES
  12.            ('Ord_003','T3','',GETDATE(),'RAJ' ,GETDATE(),'RAJ')
مەزمۇننى كۆچۈرۈۋېلىش

:Order Detailئىسمىدىنلا كۆرۈۋېلىشقا بولىدۇ بۇنىڭدا بۇيرۇتمىلارنىڭ تەپسىلاتى بولىدۇ. مەسىلەن:مەن ئۈستىدىكى بۇيرۇتمىلارنىڭ ئۈچ ئوبيېكتى بار،دەپ ئويلىۋالدىم، ئەمدى Order Detail جەدىۋىلىنى قۇرايلى
  1. CREATE TABLE [dbo].[OrderDetails](
  2.         [Order_Detail_No] [varchar](20) NOT NULL,
  3.         [Order_No] [varchar](20) CONSTRAINT  fk_OrderMasters FOREIGN KEY REFERENCES OrderMasters(Order_No),
  4.         [Item_Code] [varchar](20) CONSTRAINT  fk_ItemMasters FOREIGN KEY REFERENCES ItemMasters(Item_Code),
  5.         [Notes] [varchar](200) NOT NULL,
  6.         [QTY]  INT NOT NULL,
  7.         [IN_DATE] [datetime] NOT NULL,
  8.         [IN_USR_ID] [varchar](20) NOT NULL,
  9.         [UP_DATE] [datetime] NOT NULL,
  10.         [UP_USR_ID] [varchar](20) NOT NULL,
  11. CONSTRAINT [PK_OrderDetails] PRIMARY KEY CLUSTERED
  12. (
  13.         [Order_Detail_No] ASC
  14. )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
  15. ) ON [PRIMARY]

  16. --Now let’s insert the 3 items for the above Order No 'Ord_001'.
  17. INSERT INTO [OrderDetails]
  18.            ([Order_Detail_No],[Order_No],[Item_Code],[Notes],[QTY]
  19.            ,[IN_DATE],[IN_USR_ID],[UP_DATE],[UP_USR_ID])
  20.      VALUES
  21.            ('OR_Dt_001','Ord_001','Item001','Need very Cold',3
  22.            ,GETDATE(),'SHANU' ,GETDATE(),'SHANU')

  23. INSERT INTO [OrderDetails]
  24.            ([Order_Detail_No],[Order_No],[Item_Code],[Notes],[QTY]
  25.            ,[IN_DATE],[IN_USR_ID],[UP_DATE],[UP_USR_ID])
  26.      VALUES
  27.            ('OR_Dt_002','Ord_001','Item004','very Hot ',2
  28.            ,GETDATE(),'SHANU' ,GETDATE(),'SHANU')

  29. INSERT INTO [OrderDetails]
  30.            ([Order_Detail_No],[Order_No],[Item_Code],[Notes],[QTY]
  31.            ,[IN_DATE],[IN_USR_ID],[UP_DATE],[UP_USR_ID])
  32.      VALUES
  33.            ('OR_Dt_003','Ord_001','Item003','Very Spicy',4
  34.            ,GETDATE(),'SHANU' ,GETDATE(),'SHANU')
مەزمۇننى كۆچۈرۈۋېلىش

Order Detail غا مەلۇمات قىستۇرۇش ئەمدى بىز same_order-No دە ئۈچ تەپسىلاتتا ئۈچ ئوخشىمىغان ئوبيېكت بارلىقىنى كۆرەلەيمىز.دېمەكچى Item Master ئۈچۈن ئوبيېكىت نامىنىڭ تەپسىلاتى بولىدۇ.
  1. INSERT INTO [OrderDetails]
  2.            ([Order_Detail_No],[Order_No],[Item_Code],[Notes],[QTY]
  3.            ,[IN_DATE],[IN_USR_ID],[UP_DATE],[UP_USR_ID])
  4.      VALUES
  5.            ('OR_Dt_004','Ord_002','Item002','Need very Hot',2
  6.            ,GETDATE(),'SHANU' ,GETDATE(),'SHANU')

  7. INSERT INTO [OrderDetails]
  8.            ([Order_Detail_No],[Order_No],[Item_Code],[Notes],[QTY]
  9.            ,[IN_DATE],[IN_USR_ID],[UP_DATE],[UP_USR_ID])
  10.      VALUES
  11.            ('OR_Dt_005','Ord_002','Item003','very Hot ',2
  12.            ,GETDATE(),'SHANU' ,GETDATE(),'SHANU')

  13. INSERT INTO [OrderDetails]
  14.            ([Order_Detail_No],[Order_No],[Item_Code],[Notes],[QTY]
  15.            ,[IN_DATE],[IN_USR_ID],[UP_DATE],[UP_USR_ID])
  16.      VALUES
  17.            ('OR_Dt_006','Ord_003','Item003','Very Spicy',4
  18.            ,GETDATE(),'SHANU' ,GETDATE(),'SHANU')
مەزمۇننى كۆچۈرۈۋېلىش

2. ئاددىي SELECT جۈملىسى
SELECT ئىزدەش جۈملىسى SQL دىكى ئەڭ ئاساسىي ھەمدە ئەڭ مۇھىم بولغان DML جۈملىسىنىڭ بېرى. ئۇنداقتا DML دېگەن نېمە؟ DML نىڭ تولۇق نامى مەلۇمات مەشغۇلات تىلى (Data Mnipulation Language) بولۇپ،ئۇنىڭ مەنىسى بولسا بۇ جۈملە(SELECT) ساندانغا ساقلانغان مەلۇمەتلارغا قارىتا مەشغۇلات قىلىش ئۈچۈن ئىشلىتىلىدۇ،دېگەنلىك بولىدۇ. SELECT جۈملىسى بولسا سانداندىن بىر ياكى كۆپلىگەن مەلۇماتتىن بىر ياكى كۆپلىگەن ئىستوننى تاللاپ سۈزۈش ئۈچۈن ئىشلىتىلىدۇ. مىسال ئۈچۈن مەن SQL Server دىن ئىسمىمنى ئىزدەپ باقتىم
  1. SELECT 'My Name Is SYED SHANU'
  2. -- With Column Name using 'AS'
  3. SELECT 'My Name Is SYED SHANU' as 'MY NAME'
  4. -- With more then the one Column
  5. SELECT 'My Name' as 'Column1', 'Is' as 'Column2', 'SYED SHANU' as 'Column3'
مەزمۇننى كۆچۈرۈۋېلىش

جەدىۋەلدە SELECT جۈملىسىنى ئىشلىتىش
  1. -- To Display all the columns from the table we use * operator in select Statement.
  2. Select * from ItemMasters
  3. -- If we need to select only few fields from a table we can use the Column Name in Select Statement.
  4. Select    Item_Code
  5.                 ,Item_name as Item
  6.                 ,Price
  7.                 ,Description
  8.                 ,In_DATE
  9.                 FROM
  10.                 ItemMasters
مەزمۇننى كۆچۈرۈۋېلىش

3. ئاددىي جەمئىيلەش(يىغىندا) ۋە سىكاليار فۇنكىسيەسى
جەمئىيلەش فۇنكىسيەسى ۋە سىكاليار فۇنكىسيەرى SQl Server نىڭ ئىچكى فۇنكىسيەلىرى بولۇپ، بىز بۇلارنى SELECT جۈملىسىدە ئىشلىتەلەيمىز.مەسىلەن: Count(), Max(), Sum(), Upper(), lower(), Round() قاتارلىقلار.تۆۋەندە بىز SQL كودى ئارقىلىق بۇ فۇنكىسيەلەرنىڭ ئىشلىتىلىشىنى كۆرۈپ باقايلى.
  1. select * from ItemMasters
  2. -- Aggregate
  3. -- COUNT() -> returns the Total no of records from table , AVG() returns the Average Value from Colum,MAX() Returns MaX Value from Column
  4. -- ,MIN() returns Min Value from Column,SUM()  sum of total from Column
  5. Select Count(*)  TotalRows,AVG(Price) AVGPrice
  6.                 ,MAX(Price) MAXPrice,MIN(Price) MinPrice,Sum(price) PriceTotal
  7.                 FROM ItemMasters

  8. -- Scalar
  9. -- UCASE() -> Convert to  Upper Case  ,LCASE() -> Convert to Lower Case,
  10. -- SUBSTRING() ->Display selected char from column ->SUBSTRING(ColumnName,StartIndex,LenthofChartoDisplay)
  11. --,LEN() -> lenth of column date,
  12. -- ROUND()  -> Which will round the value
  13. SELECT  UPPER(Item_NAME) Uppers,LOWER(Item_NAME) Lowers,
  14.                 SUBSTRING(Item_NAME,2,3) MidValue,LEN(Item_NAME) Lenths
  15.            ,SUBSTRING(Item_NAME,2,LEN(Item_NAME)) MidValuewithLenFunction,
  16.             ROUND(Price,0) as Rounded
  17.                 FROM ItemMasters
مەزمۇننى كۆچۈرۈۋېلىش

4. چىسلا فۇنكىسيەسى
بىز تۈر مەلۇمات جەدىۋىلىدە ئاساسەن دېگۈدەك چىسلا ئىستونىنى ئىشلىتىمىز،شۇڭلاشقا چىسلا فۇنكىسيەلىرى تۈر دە ناھايىتىي مۇھىم رول ئوينايدۇ.بەزىدە بىز چىسلا فۇنكىسيەلىرىگە بەق ئېھتىياتچان بولىشىمىز لازىم، ئۇ ھەرۋاقت سىزگە زور ئاۋارىچىلىقلارنى ئېلىپ كېلەلەيدۇ. تۈر دە، بىز مۇۋاپىق بولغان چىسلا فۇنكىسيەسى ۋە چىسلا فورماتىنى تاللايمىز، ئەمدى بىر قىسىم ئۈلگە مىساللارنى كۆرۈپ باقايلى.
  1. -- GETDATE() -> to Display the Current Date and Time
  2. -- Format() -> used to display our date in our requested format
  3. Select GETDATE() CurrentDateTime, FORMAT(GETDATE(),'yyyy-MM-dd') AS DateFormats,
  4.            FORMAT(GETDATE(),'HH-mm-ss')TimeFormats,
  5.            CONVERT(VARCHAR(10),GETDATE(),10) Converts1,
  6.            CONVERT(VARCHAR(24),GETDATE(),113),
  7.            CONVERT(NVARCHAR, getdate(), 106) Converts2 ,-- here we used Convert Function
  8.           REPLACE(convert(NVARCHAR, getdate(), 106), ' ', '/') Formats-- Here we used replace and --convert functions.
  9.           --first we convert the date to nvarchar and then we replace the '' with '/'

  10. select * from Itemmasters

  11. Select  ITEM_NAME,IN_DATE CurrentDateTime, FORMAT(IN_DATE,'yyyy-MM-dd') AS DateFormats,
  12.                 FORMAT(IN_DATE,'HH-mm-ss')TimeFormats,
  13.                 CONVERT(VARCHAR(10),IN_DATE,10) Converts1,
  14.                 CONVERT(VARCHAR(24),IN_DATE,113),
  15.                 convert(NVARCHAR, IN_DATE, 106) Converts2 ,-- here we used Convert Function
  16.                 REPLACE(convert(NVARCHAR,IN_DATE, 106), ' ', '/') Formats
  17.                 FROM Itemmasters
مەزمۇننى كۆچۈرۈۋېلىش

DatePar – بىز بۇ فۇنكىسيە يىل،ئاي،كۈننى تاللاش ئۈچۈن ئىشلىتىلىدۇ.
-DateADD بۇ فۇنكىسيە تاللانغان چىسلاغا كۈن قوشۇش ياكى ئېلىش ئۈچۈن ئىشلىتىلىدۇ. -
DateDiff- بۇ فۇنكىسيە ئىككى چىسلا پەرقىنى ھېسابلاش ئۈچۈن ئىشلىتىلىدۇ.
  1. --Datepart DATEPART(dateparttype,yourDate)
  2. SELECT DATEPART(yyyy,getdate()) AS YEARs ,
  3. DATEPART(mm,getdate()) AS MONTHS,
  4. DATEPART(dd,getdate()) AS Days,
  5. DATEPART(week,getdate()) AS weeks,
  6. DATEPART(hour,getdate()) AS hours

  7. --Days Add to add or subdtract date from a selected date.
  8. SELECT GetDate()CurrentDate,DATEADD(day,12,getdate()) AS AddDays ,
  9. DATEADD(day,-4,getdate()) AS FourDaysBeforeDate

  10. -- DATEDIFF() -> to display the Days between 2 dates
  11. select DATEDIFF(year,'2003-08-05',getdate())  yearDifferance ,
  12.   DATEDIFF(day,DATEADD(day,-24,getdate()),getdate()) daysDifferent,
  13. DATEDIFF(month,getdate(),DATEADD(Month,6,getdate())) MonthDifferance
مەزمۇننى كۆچۈرۈۋېلىش

.5 باشقا SELECT فۇنكىسيەلىرى
SELECT -Top  جۈملىسى بىلەن بىرلەشتۈرۈلۈپ ،ئۈستۈنكى ياكى ئاستىنقى بىر قانچە مەزمۇننى كۆرسىتىش ئۈچۈن ئىشلىتىلىدۇ.
SELECT - Order By جۈملىسى بىلەن بىرلەشتۈرۈلۈپ،ئىستوندىكى رېكوردلارنى يۇقىرىلاش تەرتىپى ياكى تۆۋەنلەش تەرتىپى بويىچە تىزىش ئۈچۈن ئىشلىتىلىدۇ.
  1. --Top to Select Top first and last records using Select Statement.
  2. Select * FROM ItemMasters
  3. --> First Display top 2 Records
  4. Select TOP 2 Item_Code
  5.                          ,Item_name as Item
  6.                          ,Price
  7.                          ,Description
  8.                          ,In_DATE
  9. FROM ItemMasters
  10. --> to Display the Last to Records we need to use the Order By Clause
  11. -- order By to display Records in assending or desending order by the columns
  12. Select TOP 2  Item_Code
  13.                          ,Item_name as Item
  14.                          ,Price
  15.                          ,Description
  16.                          ,In_DATE
  17. FROM ItemMasters
  18. ORDER BY Item_Code DESC
مەزمۇننى كۆچۈرۈۋېلىش

Distinct   SELECT- جۈملىسى بىلەن بىرلەشتۈرۈلۈپ، قايتىلانغان رېكوردلارنى سۈزۈۋېتىش ئۈچۈن ئىشلىتىلىدۇ.
  1. Select * FROM ItemMasters
  2. --Distinct -> To avoid the Duplicate records we use the distinct in select statement
  3. -- for example in this table we can see here we have the duplicate record 'Chiken Burger'
  4. -- but with different Item_Code when i use the below select statement see what happen

  5. Select   Item_name as Item
  6.                 ,Price
  7.                 ,Description       
  8.                 ,IN_USR_ID       
  9.                 FROM ItemMasters
  10. -- here we can see the Row No 3 and 5 have the duplicate record to avoid this we use the distinct KeyWord in select statement.

  11. select Distinct Item_name as Item
  12.                                 ,Price
  13.                                 ,Description       
  14.                                 ,IN_USR_ID       
  15.                                  FROM ItemMasters
مەزمۇننى كۆچۈرۈۋېلىش

Where جۈملىسى SQL SELECT جۈملىسىدە ئىنتايىن مۇھىم.ئۇنداقتا نېمە ئۈچۈن Where جۈملىسىنى ئىشلىتىمىز؟ قانداق ۋاقىتتا Where جۈملىسىنى ئىشلىتىمىز؟ Where بىر قىسىم شەرتلەر ئارقىلىق مەلۇمات نەتىجىسى توپلىمىنى سۈزىدۇ. مىسال ئۈچۈن بىز بىر جەدىۋەلدە 10,000 رېكورد بار، دەپ ئويلايلى.ئەگەر بىز SELECT جۈملىسىنى ئىشلىتىش ئارقىلىق بۇ رېكوردلارنى كۆرسەتمەكچى بولساڭ، بارلىق مەلۇماتنى كۆرسىتىش ئۈچۈن يۈكلەش ۋاقتى بەك ئۇزۇن بولۇشى مۇمكىن.مۇشۇنداق ئەھۋالدا بىر قىسىم شەرتلەر ئارقىلىق مەلۇم مەلۇماتلارنى تېزلا كۆرسىتەلەيمىز. مىسال ئۈچۈن بىز Where جۈملىسى ئارقىلىق ئۆتكەن بىر ھەپتە ياكى بىر ئاينىڭ مەلۇمات رېكوردتىنى كۆرسىتىپ باقايلى. بىز ئاشخانىنىڭ Order Detail جەدىۋىلىدە، مەسىلەن ئۈچۈن Order Detail جەدىۋىلىدە 10,000 رېكورد بار،دەپ قارايلى،ئەمما Order Detail دىكى بىر Order_No دىكى رېكود 100 دىن ئارتۇق بولمىسۇن، ئەمدى بىز Where جۈملىسىنىڭ قانداق ئىشلىتىلىدىغانلىقىنى كۆرۈپ باقايلى
  1. Select * from ItemMasters
  2. Select * from OrderDetails
  3. --Where -> To display the data with certain conditions
  4. -- Now below example which will display all the records which has Item_Name='Coke'
  5. select * FROM ItemMasters WHERE ITEM_NAME='COKE'
  6. -- If we want display all the records Iten_Name which Starts with 'C' then we use Like in where clause.
  7. SELECT * FROM ItemMasters WHERE ITEM_NAME Like 'C%'

  8. --> here we display the ItemMasters where the price will be greater then or equal to 40.
  9. --> to use more then one condition we can Use And or Or operator.
  10. --If we want to check the data between to date range then we can use Between Operator in Where Clause.
  11. select Item_name as Item
  12.                 ,Price
  13.                 ,Description       
  14.                 ,IN_USR_ID       
  15.                  FROM ItemMasters
  16.                  WHERE
  17.                         ITEM_NAME Like 'C%'
  18.                         AND
  19.                         price >=40
  20. --> here we display the OrderDetails where the Qty will be greater 3

  21. Select * FROM OrderDetails WHERE qty>3
مەزمۇننى كۆچۈرۈۋېلىش

Where-In جۈملىسى   
  1. -- In clause -> used to display the data which is in the condition
  2. select *
  3.                 FROM ItemMasters
  4.                 WHERE
  5.                 Item_name IN ('Coffee','Chiken Burger')

  6. -- In clause with Order By - Here we display the in descending order.
  7. select *
  8.                 FROM ItemMasters
  9.                 WHERE
  10.                 Item_name IN ('Coffee','Chiken Burger')
  11.                 ORDER BY Item_Code Desc
مەزمۇننى كۆچۈرۈۋېلىش

Where – Between ئاچقۇچلۇق سۆزى
  1. -- between  -> Now if we want to display the data between to date range then we use betweeen keyword
  2. select * FROM ItemMasters

  3. select * FROM ItemMasters
  4.                  WHERE
  5.                  In_Date BETWEEN '2014-09-22 15:59:02.853' AND '2014-09-22 15:59:02.853'

  6. select * FROM ItemMasters
  7.                  WHERE
  8.                  ITEM_NAME Like 'C%'
  9.                  AND
  10.                  In_Date BETWEEN '2014-09-22 15:59:02.853' AND '2014-09-22 15:59:02.853'
مەزمۇننى كۆچۈرۈۋېلىش

مەلۇم شەر دائىرىسىدىكى مەلۇماتلارنى ئىزدەش ئۈچۈن،بىز Where جۈملىسىدە Between ئاچقۇچلۇق سۆزىنى ئىشلىتىمىز.
Group BY.7 جۈملىسى
Group BY جۈملىسى ئىزدەلگەن نەتىجىگە ئاساسەن كۆرسىتلگەن بۆلەك بويىچە گۇرۇپپىلارغا بۆلىدۇ.
  1. --Group By -> To display the data with group result.Here we can see we display all the AQggregate result by Item Name
  2. Select ITEM_NAME,Count(*)  TotalRows,AVG(Price) AVGPrice
  3.                 ,MAX(Price) MAXPrice,MIN(Price) MinPrice,Sum(price) PriceTotal
  4.                 FROM
  5.                 ItemMasters
  6.                 GROUP BY ITEM_NAME

  7. -- Here this group by will combine all the same Order_No result and make the total or each order_NO
  8. Select Order_NO,Sum(QTy) as TotalQTY
  9.         FROM OrderDetails
  10.         where qty>=2
  11.         GROUP BY Order_NO

  12. -- Here the Total will be created by order_No and Item_Code
  13. Select Order_NO,Item_Code,Sum(QTy) as TotalQTY
  14.         FROM OrderDetails
  15.         where qty>=2
  16.         GROUP BY Order_NO,Item_Code
  17.         Order By Order_NO Desc,Item_Code
مەزمۇننى كۆچۈرۈۋېلىش

Group By & Having جۈملىسى
Having جۇملىسى - Group By جۈملىسى جەمئىيلەش فۇنكىسيەسىنى قوللىمىغانلىقتىن، جەمئىيلەش فۇنكىسيەسىنى ئىشلىتىش ئۈچۈن SELECT جۈملىسىدە Having جۈملىسىنى ئىشلىتىمىز.
  1. --Group By Clause -- here this will display all the Order_no
  2. Select Order_NO,Sum(QTy) as TotalQTY
  3.         FROM OrderDetails
  4.         GROUP BY Order_NO

  5. -- Having Clause-- This will avoid the the sum(qty) less then 4       
  6. Select Order_NO,Sum(QTy) as TotalQTY
  7.         FROM OrderDetails
  8.         GROUP BY Order_NO
  9.         HAVING Sum(QTy) >4
مەزمۇننى كۆچۈرۈۋېلىش

8.قىسمىي ئىزدەش
قىسمىي ئىزدەش ئادەتتە Where ئىچكىي ئىزدەش ۋە قەۋەتلىك ئىزدەشتە كۆرۈلىدۇ.،Select،Update، Delete جۈملىلىرىدىمۇ ئىشلىتىشكە بولىدۇ.
  1. --Sub Query -- Here we used the Sub query in where clause to get all the Item_Code where the price>40 now this sub
  2. --query reslut we used in our main query to filter all the records which Item_code from Subquery result
  3. SELECT * FROM ItemMasters
  4.                  WHERE Item_Code IN
  5.                 (SELECT Item_Code FROM ItemMasters WHERE price > 40)

  6. -- Sub Query with Insert Statement
  7. INSERT INTO ItemMasters           ([Item_Code] ,[Item_Name],[Price],[TAX1],[Discount],[Description],[IN_DATE]
  8.            ,[IN_USR_ID],[UP_DATE] ,[UP_USR_ID])
  9.     Select 'Item006'
  10.            ,Item_Name,Price+4,TAX1,Discount,Description
  11.            ,GetDate(),'SHANU',GetDate(),'SHANU'
  12.            from ItemMasters
  13.            where Item_code='Item002'      

  14. --After insert we can see the result as
  15.         Select * from ItemMasters
مەزمۇننى كۆچۈرۈۋېلىش

Joins .9
بىز ھازىرغىچە بىر جەدىۋەل بىلەنلا ھەپىلىشىپ كەلدۇق.ئەمدى بىز بىردىن ئارتۇق جەدىۋەللەرنى قانداق ئۇلاشنى كۆرۈپ باقايلى.بۇنداق ۋاقىتتا Join جۈملسى ئىشلىتىلسە Select جۈملىسى ئۈنۈملۈك بولىدۇ.SQL Server نى ئىشلىتىشتىكى ئاساسلىق مەقسەت بولسا نورماللاشتۇرۇشنى ئىشلىتىش ۋە رېكوردلارنى كۆرسىتىش ئارقىلىق ئىقتىدارنى يۇقىرى كۆتۈرۈش. نورماللاشتۇرۇشتا بىز زور جەدىۋەللەرنى پارچىلاپ مۇناسىۋەتلىك كىچىك جەدىۋەللەرگە پارچىلىۋالىمىز، ئەمدى مۇناسىۋەتلىك جەدىۋەل مەلۇماتلىرىنى كۆرسىتىش ئۈچۈن بىز بىر يەككە Select جۈملىسى ئىشلىتىشكە ئېھتىياجلىق بولىمىز. بۇنى تاماملاش ئۈچۈن بىز SQL Select جۈملىسىدە Join نى ئىشلىتىمىز ھەمدە مەلۇمات ۋە كۆرسىتلىشنى گۇرۇپپىلايمىز.
  1. --Now we have used the simple join with out any condition this will display all the
  2. -- records with duplicate data to avaoid this we see our next example with condition
  3. SELECT * FROM Ordermasters,OrderDetails
  4. -- Simple Join with Condition  now here we can see the duplicate records now has been avoided by using the where checing with both table primaryKey field
  5. SELECT *
  6.                 FROM
  7.                 Ordermasters as M, OrderDetails as D
  8.                 where M.Order_NO=D.Order_NO
  9.                 and M.Order_NO='Ord_001'

  10. -- Now to make more better understanding we need to select the need fields from both
  11. --table insted of displaying all column.
  12. SELECT M.order_NO,M.Table_ID,D.Order_detail_no,Item_code,Notes,Qty
  13.                                 FROM
  14.                                 Ordermasters as M, OrderDetails as D
  15.                                 where M.Order_NO=D.Order_NO                  
  16. -- Now lets Join 3 table
  17. SELECT         M.order_NO,M.Table_ID,D.Order_detail_no,I.Item_Name,D.Notes,D.Qty,I.Price,
  18.                 I.Price*D.Qty as TotalPrice
  19.                                 FROM
  20.                                 Ordermasters as M, OrderDetails as D,ItemMasters as I
  21.                                 where
  22.                                 M.Order_NO=D.Order_NO AND D.Item_Code=I.Item_Code
مەزمۇننى كۆچۈرۈۋېلىش

Inner Join,Left Outer Join,Right Outer Join and Full outer Join جۈملىلىرى
  1. --INNER JOIN
  2. --This will display the records which in both table Satisfy here i have used Like in where class which display the
  3. SELECT M.order_NO,M.Table_ID,D.Order_detail_no,I.Item_Name,D.Notes,D.Qty,I.Price,I.Price*D.Qty as TotalPrice
  4.                 FROM
  5.                 Ordermasters as M Inner JOIN OrderDetails as D
  6.                 ON M.Order_NO=D.Order_NO
  7.                 INNER JOIN         ItemMasters as I
  8.                 ON   D.Item_Code=I.Item_Code
  9.                 WHERE
  10.                 M.Table_ID like 'T%'
  11. --LEFT OUTER JOIN
  12. --This will display the records which Left side table Satisfy
  13. SELECT M.order_NO,M.Table_ID,D.Order_detail_no,I.Item_Name,D.Notes,D.Qty,I.Price,I.Price*D.Qty as TotalPrice
  14.                 FROM
  15.                 Ordermasters as M LEFT OUTER JOIN OrderDetails as D
  16.                 ON M.Order_NO=D.Order_NO
  17.                 LEFT OUTER JOIN         ItemMasters as I
  18.                 ON   D.Item_Code=I.Item_Code
  19.                 WHERE
  20.                 M.Table_ID like 'T%'
  21. --RIGHT OUTER JOIN
  22. --This will display the records which Left side table Satisfy
  23. SELECT M.order_NO,M.Table_ID,D.Order_detail_no,I.Item_Name,D.Notes,D.Qty,I.Price,I.Price*D.Qty as TotalPrice
  24.                 FROM
  25.                 Ordermasters as M RIGHT OUTER JOIN OrderDetails as D
  26.                 ON M.Order_NO=D.Order_NO
  27.                 RIGHT OUTER JOIN         ItemMasters as I
  28.                 ON   D.Item_Code=I.Item_Code
  29.                 WHERE
  30.                 M.Table_ID like 'T%'

  31. --FULL OUTER JOIN
  32. --This will display the records which Left side table Satisfy
  33. SELECT M.order_NO,M.Table_ID,D.Order_detail_no,I.Item_Name,D.Notes,D.Qty,I.Price,I.Price*D.Qty as TotalPrice
  34.                 FROM
  35.                 Ordermasters as M FULL OUTER JOIN OrderDetails as D
  36.                 ON M.Order_NO=D.Order_NO
  37.                 FULL OUTER JOIN         ItemMasters as I
  38.                 ON   D.Item_Code=I.Item_Code
  39.                 WHERE
  40.                 M.Table_ID like 'T%'
مەزمۇننى كۆچۈرۈۋېلىش

  Union .10 ۋە Union ALL(بىرىكتۈرۈش جۈملىسىUnion( جۈملىسى پەقەت بىردىنبىر مەلۇماتلارنى ئىزدەپ چىقىدۇ،Union ALL بولسا قايتىلانغان مەلۇماتلارنىمۇ ئىزدەپ چىقىدۇ. ئەگەر بىزگە قايتىلانغان مەلۇماتلار چىقمايدىغان بىرىكتۈرۈش لازىم بولسا، Unionنى ؛ قايتىلانغان مەلۇماتلارنىمۇ كۆرسىتىش لازىم بولسا،Union ALL نى ئىشلىتىمىز.
دىققەت:ئىستوننىڭ ھەممىسىنى تاللىغاندا، SQL دىكى نامى ۋە مەلۇمات تىپى Union نى ئىشلەتكەندە بىردەك بولۇشى كېرەك. Union نىڭ ئىشلىتىلىش گىراماتىكىسى تۆۋەندىكىگە ئوخشاش  
گىراماتىكىسى تۆۋەندىكىدەك بولىدۇ
  1. Select column1,Colum2 from Table1
  2. Union
  3. Select Column1,Column2 from Table2

  4. Select column1,Colum2 from Table1
  5. Union All
  6. Select Column1,Column2 from Table2
مەزمۇننى كۆچۈرۈۋېلىش
  1. --Select with different where condition which display the result as 2 Table result
  2. select Item_Code,Item_Name,Price,Description FROM ItemMasters where price <=44
  3. select Item_Code,Item_Name,Price,Description FROM ItemMasters where price >44

  4. -- Union with same table but with different where condition now which result as one table which combine both the result.
  5. select Item_Code,Item_Name,Price,Description FROM ItemMasters where price <=44
  6. UNION
  7. select Item_Code,Item_Name,Price,Description FROM ItemMasters where price >44

  8. -- Union ALL with Join sample
  9. SELECT M.order_NO,M.Table_ID,D.Order_detail_no,I.Item_Name,D.Notes,D.Qty,I.Price,I.Price*D.Qty as TotalPrice
  10.         FROM
  11.                 Ordermasters as M (NOLOCK)   Inner JOIN OrderDetails as D  
  12.                 ON M.Order_NO=D.Order_NO INNER JOIN         ItemMasters as I
  13.                 ON   D.Item_Code=I.Item_Code WHERE                I.Price <=44               
  14. Union ALL
  15. SELECT M.order_NO,M.Table_ID,D.Order_detail_no,I.Item_Name,D.Notes,D.Qty,I.Price,I.Price*D.Qty as TotalPrice
  16.         FROM
  17.                 Ordermasters as M (NOLOCK)   Inner JOIN OrderDetails as D
  18.                 ON M.Order_NO=D.Order_NO        INNER JOIN         ItemMasters as I
  19. ON   D.Item_Code=I.Item_Code        WHERE        I.Price>44
مەزمۇننى كۆچۈرۈۋېلىش

.11ئورتاق جەدىۋەل ئىپادىسىCommon Table Expression s) ،قىسقارتىلىپ CTE دەپ ئېلىنىدۇWith - (
  1. declare @sDate datetime,
  2.         @eDate datetime;

  3. select  @sDate = getdate()-5,
  4.         @eDate = getdate()+16;
  5. --select @sDate StartDate,@eDate EndDate
  6. ;with cte as
  7.    (
  8.       select @sDate StartDate,'W'+convert(varchar(2),
  9.             DATEPART( wk, @sDate))+'('+convert(varchar(2),@sDate,106)+')' as 'SDT'     
  10.   union all
  11.        select  dateadd(DAY, 1, StartDate) ,
  12.               'W'+convert(varchar(2),DATEPART( wk, StartDate))+'('+convert(varchar(2),
  13.                dateadd(DAY, 1, StartDate),106)+')' as 'SDT'   
  14.   FROM  cte
  15.   WHERE dateadd(DAY, 1, StartDate)<=  @eDate
  16.     )
  17. select * from cte
  18. option (maxrecursion 0)
مەزمۇننى كۆچۈرۈۋېلىش

View. 12
نۇرغۇن كىشىلەرView نى Select كە ئوخشاش دەپ قاراپ ئارىلاشتۇرۇپ قويىدۇ، View ئارقىلىق بىز ئوخشاشلا Select ئىزدەش جۈملىسىنى ئىشلەتسەك بولىدۇ، بېراق View غا ۋە ئۇنىڭ ئىشلىتىشكە ئېھتىياجلىق بولىمىز. سىزگە دېسەم View رېئال تۈرلەردە ناھايىتىي قوللىنىشچان. مىسال ئۈچۈن بىز 20 ئىستوندىن ئاشقان ۋە تۆت جەدىۋەلنى ئۇلايدىغان مۇرەككەپ Select جۇملىسى يازدۇق، دەپ تۇرايلى.بىز ئۇنىڭ ئۈچۈن بىرلا ئىزدەش جۈملىسى يازىمىز ھەمدە ئوخشىغان ئورۇنلاردا ئىشلىتىمىز ۋە ھەرۋاقت ئۇ ئىزدەش جۈملىسىنى چاقىرىپ ئىشلىتىشكە ھاجىتىمىز چۈشىدۇ.ئەمدى View نىڭ SQL دىكى ئىشلىتىلىشىنى كۆرۈپ باقايلى
1)        تېزلىك:ئىزدەش تېزلىكىنى ئاشۇرغىلى بولىدۇ
2)        بىخەتەرلىك:Order Detail ۋە ۋە ئۇنىڭدا سېتىلغان ئومۇمىي ئوبيېكتلار، باھاسى دېگەندەك مەزمۇنلار پەقەتلا باشقۇرغۇچى ۋە تۈزگۈچىگىلا كۆرۈنىدىغان قىلىش ئۈچۈن، ھەمدە پەقەتلا ئوبيېكىت نامى ۋە باھاسىنىلا كۆرسىتىش ئۈچۈن، بىز شۇنداق ئەھۋالدا View قۇرۇۋېلىپ ئوبيېكىت نامى ۋە باھاسىنىلا كۆرسىتىش مەقسىتىگە يېتەلەيمىز
3)        ئەگەر بىردىن ئارتۇق جەدىۋەلنى ئۇلاش ۋە بىرقانچە ئورۇندا كۆرسىتىش لازىم بولىدىغان ئەھۋالدا View نى ئىشلىتىش قولايلىق بولىدۇ.
  1. CREATE
  2. VIEW viewname
  3. AS
  4. Select ColumNames from yourTable

  5. Example :
  6. -- Here we create view for our Union ALL example
  7. Create
  8. VIEW myUnionVIEW
  9. AS
  10. SELECT M.order_NO,M.Table_ID,D.Order_detail_no,I.Item_Name,D.Notes,D.Qty,I.Price,
  11.         I.Price*D.Qty as TotalPrice
  12.             FROM
  13.                   Ordermasters as M  Inner JOIN OrderDetails as D
  14.                   ON M.Order_NO=D.Order_NO INNER JOIN ItemMasters as I
  15.                   ON   D.Item_Code=I.Item_Code WHERE        I.Price <=44               
  16. Union ALL
  17. SELECT M.order_NO,M.Table_ID,D.Order_detail_no,I.Item_Name,D.Notes,D.Qty,I.Price,
  18.         I.Price*D.Qty as TotalPrice
  19.             FROM
  20.                   Ordermasters as M  Inner JOIN OrderDetails as D
  21.                   ON M.Order_NO=D.Order_NO INNER JOIN ItemMasters as I
  22.                   ON   D.Item_Code=I.Item_Code        WHERE        I.Price>44

  23. -- View Select query
  24. Select * from myUnionVIEW
  25. -- We can also use the View to display with where condition and with selected fields
  26. Select order_Detail_NO,Table_ID,Item_Name,Price from myUnionVIEW where price >40
مەزمۇننى كۆچۈرۈۋېلىش

Pivot .13
SQLدا نېمە ئۈچۈن Pivot ئىشلىتىش مەسىلىدە، نۇرغۇن كىشلەر مەلۇماتنى قانداق قىلىپ قۇرنى ئىستون قىلىپ كۆرسەتكىلى بولىدۇ، دەپ سورايدۇ.دەل مۇشۇنداق ئەھۋالدا Pivot ئىشلىتىلىدۇ، يەنى مەلۇمات كۆرسەتكەندە قۇرنى ئىستون قىلىپ ئالماشتۇرۇپ كۆرستىش ئۈچۈن Pivot ئىشلىتىلىدۇ.بۇنىڭ ئۈچۈن بىر مىسال كۆرەيلى
  1. -- Simple Pivot Example
  2. SELECT *  FROM ItemMasters
  3. PIVOT(SUM(Price)      
  4. FOR ITEM_NAME IN ([Chiken Burger], Coffee,Coke)) AS PVTTable

  5. -- Pivot with detail example
  6. SELECT *
  7. FROM (
  8.     SELECT
  9.        ITEM_NAME,
  10.         price as TotAmount
  11.     FROM ItemMasters

  12. ) as s
  13. PIVOT
  14. (
  15.     SUM(TotAmount)
  16.     FOR [ITEM_NAME] IN ([Chiken Burger], [Coffee],[Coke])
  17. )AS MyPivot
مەزمۇننى كۆچۈرۈۋېلىش

14.ساقلىنىش جەريانى
مەن دائىم باشقىلارنىڭ SQL Server دا كۆپ قۇرلۇق SQL جۈملىسىنى قانداق يېزىش كېرەك، ئاندىن ئۇنى C# تىلىغا كىرگۈزۈش توغرىلىق سۇئاللارنى سورىغانلىقىنى كۆرىمەن.مەسىلەن: Select ، Insert ، Update لەرنى قانداق ئىجرا قىلىمەن دېگەندەك.ئەمەلىيەتتە بىز ئوخشاش بىر ۋاقتتا ھەممە ئىزدەشلەرنى ئىجرا قىلالمايمىز،ئەمما بىز ساقلاش جەريانىنى ئىشلىتىپ بارلىق ئىزدەشلەرنى قۇرمۇقۇر ئىجرا قىلالايمىز. SP(Stored procedure-ساقلىنىش جەريانى) بىز ئىلگىر يېزىپ قويغان ھەمدە دائىم ئىشلىتىدىغان بىرەر فۇنكىسيە ئوخشايدۇ،ئوخشىمىغان پارامېتر قىممەتلىرى بىلەن ئوخشىمىغان ئىقتىدارلارنى ھازىرلايدۇ. ئەمدىكى ئۈلگە مىسالىمىزدا مەن tbl غا يېڭى ئوبيېكىت قىستۇراي، قىستۇرۇشتىن بۇرۇن Itemcode نى ھاسىل قىلىۋالاي،بۇ ئۈلگە مىسالنى ئاددىي ئۇسۇل بىلەن قىلىش ئۈچۈن، رېكوردلارنىڭ سانىنى ۋە ئۇنىڭغا يېڭى بىر قىممەت قوشۇپ ئىشلىتىپ كۆرەيلى. ئوبيېكىت كودىنى ھاسىل قىلىش گىراماتىكىسى تۆۋەندىكىدەك:
  1. CREATE PROCEDURE [ProcedureName]                                             

  2. AS                                                               
  3. BEGIN
  4. -- Select or Update or Insert query.
  5. END

  6. To execute SP we use
  7. exec ProcedureName
مەزمۇننى كۆچۈرۈۋېلىش

پارامېتر سەپلەنمىگەن ساقلاش جەريانى
  1. -- =============================================                                                               
  2. -- Author      : Shanu                                                               
  3. -- Create date : 2014-09-15                                                               
  4. -- Description : To Display Pivot Data                                                        
  5. -- Latest                                                               
  6. -- Modifier    : Shanu                                                               
  7. -- Modify date : 2014-09-15                                                                 
  8. -- =============================================                                                               
  9. -- exec USP_SelectPivot                                 
  10. -- =============================================                                                           
  11. Create PROCEDURE [dbo].[USP_SelectPivot]      
  12. AS                                                               
  13. BEGIN                                                
  14.    DECLARE @MyColumns AS NVARCHAR(MAX),
  15.     @SQLquery  AS NVARCHAR(MAX)
  16. -- here first we get all the ItemName which should be display in Columns we use this in our necxt pivot query
  17. select @MyColumns = STUFF((SELECT ',' + QUOTENAME(Item_NAME)
  18.                     FROM ItemMasters
  19.                     GROUP BY Item_NAME
  20.                     ORDER BY Item_NAME
  21.             FOR XML PATH(''), TYPE
  22.             ).value('.', 'NVARCHAR(MAX)')
  23.         ,1,1,'')
  24. -- here we use the above all Item name to disoplay its price as column and row display
  25. set @SQLquery = N'SELECT ' + @MyColumns + N' from
  26.              (
  27.                  SELECT
  28.        ITEM_NAME,
  29.         price as TotAmount
  30.     FROM ItemMasters
  31.             ) x
  32.             pivot
  33.             (
  34.                  SUM(TotAmount)
  35.                 for ITEM_NAME in (' + @MyColumns + N')
  36.             ) p '

  37. exec sp_executesql @SQLquery;           

  38.    RETURN                                             
  39.    
  40. END
مەزمۇننى كۆچۈرۈۋېلىش

15 فۇنكىسيە
ماقالىنىڭ بېشىدا بىر قىسىم SQL ئىچكىي فۇنكىسيەلىرى MAX(),SUM(), GetDate()نى كۆرۈپ ئۆتتۇق، ئەمدى ئىختىيارى فۇنكىسيەلەرنى قانداق قۇرۇشنى كۆرۈپ باقايلى. بەزىلەر مەندىن فۇنكىسيە دېگەن نېمە، ئىشلىتىلىشىچۇ؟ دەپ سوراپمۇ قالىدۇ، مەن ئۇنى ئاددىي يوللار ئارقىلىق چۈشۈندۈرىمەن. ئەگەر بىز بەزىدە ئوخشىمىغان ۋاستىلەر ئارقىلىق مەلۇم بىر ھەرىكەتنى ياكى ئىقتىدارنى ئىجراق قىلماقچى بولساق، بىز فۇنكىسيە قۇرىۋالىمىز ھەمدە لازىم بولغان يەردە ئۇنى چاقىرىپ ئىشلىتىمىز.فۇنكىسيە قۇرۇشنىڭ گىراماتىكىسى تۆۋەندىكىدەك بولىدۇ.
  1. Create Function functionName
  2. As
  3. Begin
  4. END
مەزمۇننى كۆچۈرۈۋېلىش

  ئەمدى tblItemMaster نىڭ ئەڭ چوڭ قۇر سانىنى قايتۇرىدىغان فۇنكىسيەنى كۆرۈپ باقايلى.
  1. -- =============================================                                                               
  2. -- Author      : Shanu                                                               
  3. -- Create date : 2014-09-15                                                               
  4. -- Description : To Display Pivot Data                                                        
  5. -- Latest                                                               
  6. -- Modifier    : Shanu                                                               
  7. -- Modify date : 2014-09-15                                                                 

  8. Alter FUNCTION [dbo].[ufnSelectitemMaster]()
  9. RETURNS int
  10. AS
  11. -- Returns total Row count of Item Master.

  12. BEGIN
  13.   DECLARE @RowsCount AS int;

  14. Select @RowsCount= count(*)+1 from ItemMasters
  15. RETURN @RowsCount;

  16. END

  17. -- to View Function we use select and fucntion Name
  18. select [dbo].[ufnSelectitemMaster]()
مەزمۇننى كۆچۈرۈۋېلىش



مەنبە:چاشقان تور خاتىرىسى

باھا سۆز

ياخشى: 5.0
ياخشى: 5
  ۋاقتى: 2014-10-11 14:56

باھالاش

3

باھا خاتىرىسى

ۋاقتى: 2014-10-10 23:26:54 | ھەممە قەۋەتنى كۆرۈش
ساچقان ئەمدى بەلەن ئىش قىلىۋاتىسىز جۇمۇ
كىرگەندىن كېيىن ئىنكاس يازالايسىز كىرىش | تىزىملىتىش

سەھىپە جۇغلانما قائىدىسى

سىتاتىستىكا|قاماقخانا|يانفۇن|Archiver|ئىنتىل تورى ( 新ICP备11001938号 )  

GMT+8, 2016-4-10 00:29 , Processed in 0.175546 second(s), 27 queries .

Powered by Discuz! X3.2 Licensed(NurQut Team)

© 2001-2013 Comsenz Inc.

تېز ئىنكاس چوققىغا قايتىش سەھىپىگە قايتىش
Nobis Linden Insulated Jacka Svart Nobis Stanford Midweight men Bomber Jacka Svart Nobis Paavo Homme Reversible Quilted Vest Nobis Paavo Menn Reversible Quilted Vest Nobis Abby Ladies Knee Length Parka Kvinnor Nobis Justice Trench Nobis Bailey Unisex Hooded Parka Nobis Lady Taylor Femmes Overcoat Nobis Talia Ladies Reversible Quilted Vest Nobis Rosco Menn Long Parka Kvinnor Nobis She Ra Stone Nobis Kato men Magnetic Closure Peacoat Nobis Kato Mens Magnetic Closure Peacoat Nobis Cartel men Bomber Nobis Kato men Magnetic Closure Peacoat NOBIS SIR SALVADOR MENS OVERCOAT Nobis Sir Salvador Mens Overcoat