Skip to main content

Divide any number into Equal parts in SQL SERVER


First Create One function that will generate very first part

 CREATE FUNCTION pGetCallsCount
(
 @totalcall INT = 51,
 @Count INT  = 4
)
RETURNS INT
AS
BEGIN
DECLARE @result1 INT
 DECLARE @r INT  = @totalcall % @Count
 IF(@r=0)
 BEGIN
 IF(@count=1)
 SET @result1=@totalcall
 ELSE
  SET @result1=@totalcall/@count 
 END
 ELSE
  BEGIN 
  SET @result1=(@Count-@r)+@totalcall -- surely divided
  SET @result1=@result1/@Count
  END
  RETURN @result1
END
GO


Then Call that function to create next parts like mentioned below :-

DECLARE @totalcall INT = 43
DECLARE @Count INT  = 4
DECLARE @r INT  = @totalcall % @Count

DECLARE @totalsum INT=0
DECLARE @result INT
DECLARE @totalcalldemo INT
SELECT @totalcalldemo=@totalcall
WHILE(@totalsum<>@totalcalldemo)
BEGIN
SELECT @result=dbo.pGetCallsCount(@totalcall,@Count) -- (51,4),
SET @totalcall=@totalcall-@result
SET @Count=@Count-1
SET @totalsum=@totalsum+@result
PRINT @result
END 


OUTPUT
11
11
11
10

Comments

  1. its nice article, but can i conver this scalar valued function to table valued fuction

    ReplyDelete
    Replies
    1. yes you can, but it will simply convert that scalar value function into table value

      Delete
  2. Nice solution, thanks. Can you please explain why two main variables in functions are set to 51 and 4?

    ReplyDelete

Post a Comment

Popular posts from this blog

show image in asp.net form from database

In order to show image from database to webform first add an image control in webpage.   <asp:Image ID="imgStudentImage" runat="server" Height="157px" Width="160px" /> Then add new webform to read image from database for example displayimage.aspx and in code behind model write the following code. public string str = //your string     public SqlConnection conn;     public SqlCommand sql = new SqlCommand();     public SqlDataReader dr;     public string strSQL;     protected void Page_Load(object sender, EventArgs e)     {         conn = new SqlConnection(str);         conn.Open();         long id = Convert.ToInt64(Request.QueryString["mId"]);         strSQL = "";         strSQL = strSQL + " SELECT snap from S...

Snake Xenzia

Hello friends did you remember the GAME you play on nokia 1100 , SNAKE XENZIA .Yeah the same you are thinking ,a snake eating food and go longer and longer till it dies. Why to play it on mobile when it is available on your pc ??? It is made in .net framework 4.0 .Just install the setup and play SNAKE XENZIA . Have Fun !! DOWNLOAD IT   HERE  . Related articles Rattlesnake Dreams "Classsic Snake Game In C"? Resident Evil 6 gamescom demo takes in a giant snake battle Snakes & ladders

Export Doc,Access,Image,CSV,Excel,Pdf,XML,HTML,Text,Print of Gridview in Asp.net

First import itextsharp.dll in the solution and use three namespces (basically for pdf) using iTextSharp.text; using iTextSharp.text.pdf; using iTextSharp.text.html.simpleparser;          Then Use the following code :- on each button  click  protected void Page_Load(object sender, EventArgs e)         {             if (!Page.IsPostBack)             {                 BindGridDetails(GridView1);             }         }                 protected DataTable BindGridDetails(GridView GridView1)         {   ...