Convert Excel formulae to TSQL

dinesh 41 Reputation points
2021-02-08T07:37:10.537+00:00

I have a requirement to convert excel formula to SQL query. Please help me out on below 4 excel formula

=If(AND(N3="A", R3>O3), R3,If(AND(N3="P",S3>O3),S3,If(N3="D","D",If(OR(Q3="P",Q3="A")*AND(P3>TODAY(),P3>O3),P3,O3))))

=If(AND(N3="A",W3>TODAY()),"A",IF(AND(N3="P",W3>TODAY()),"P",IF(N3="D","D",IF(OR(Q3="P",Q3="A")*AND(W3>TODAY()),"ERP",IF(AND(S3>R3,S3>P3,S3>0,S3>O3),"P",IF(AND(R3>S3,R3>P3,R3>0,R3>O3),"A",IF(AND(P3>R3,P3>S3,P3>0,P3>(O3-1)),"ERP","SLA")))))))

=IF(W3<TODAY(),"C",IF(W3<(TODAY()+7),"C IN 7", IF(W3<TODAY+30,"CE",IF(W3<TODAY()+60,"CE 31D","CE 61D"))))

=IF(OR(Q3="P",Q3="A")*AND(P3>TODAY()),TODAY-T3,0)

All above '3' number related to row3. O,P,R & S are date columns

Microsoft 365 and Office Excel For business Windows
Developer technologies Transact-SQL
{count} votes

2 answers

Sort by: Most helpful
  1. dinesh 41 Reputation points
    2021-02-15T17:48:27.877+00:00

    Hi, I'm looking for help on below formula. I wrote like this but am getting wrong data.

    =If(AND(N3="A", R3>O3), R3,If(AND(N3="P",S3>O3),S3,If(N3="D","",If(OR(Q3="P",Q3="A")*AND(P3>TODAY(),P3>O3),P3,O3))))

    select case when N='A' and R>O THEN R
    when N='P' and S>O then S
    when N='D' then ''
    when (Q='P' or Q='Á') and p>getdate() and P>O then P else O end data
    from tablename

    I have highlighted and condition. In few cases if i put and (in bold) am getting data in other cases if i put OR then am getting right data. Could someone please help me.


  2. MelissaMa-MSFT 24,221 Reputation points
    2021-02-16T07:29:28.18+00:00

    Hi @dinesh ,

    There is a similar function IIF in SQL Server.

    You could refer below and check whether it is helpful to you.

    select IIF( N='A' and R>O ,R,IIF( N='P' and S>O ,S,  
    IIF( N='D','',IIF((Q='P' or Q='Á') and p>getdate() and P>O ,P ,O)))) data   
    from test  
    

    Best regards
    Melissa


    If the answer is helpful, please click "Accept Answer" and upvote it.
    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.


Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.