Hi all--I've got a derived column transformation where I am adding a field called Import_Date. I'm telling it to add as a new column and use the function "GetDate()" to populate the field. When I run the package, it returns NULL as the data value for all rows. Any idea why this might be happening?
Periodically throughout the day a report is manually pulled from a SQL Server database. Â Is their a way w/o me adding a field to the database to have the result set return the "new" results? Â For example, lets say this is our DDL
Create Table OneTwoThree ( id int ,date11 datetime ,firefly varchar(10) )
Prior I could use this syntax, but that was only with needing to generate 1 result set. Â
Select id, convert(varchar(10), date11, 101) As [Date], firefly from onetwothree where CONVERT(varchar(10), date11, 101) < CONVERT(varchar(10), GetDate(), 101)
Looking at my datetime values, let's say the 1st was generated at 18:45, obviously the 1st two records in the table would be returned. And let's say a 2nd time I need to generate I want to exclude the 1st two entries as they have already been verified. How can I do such w/o adding a field to the table?
PROBLEM: The SQL insert trigger code below is returning incorrect results. In some cases the results returned are from entirely different fields than those specified as the source field in the SET statement. For instance the value returne for the Price_BeforeAdj field does not = 20000000? It returns a NULL. See code below.
OFFENDING CODE:
ALTER TRIGGER [dbo].[xcti_WIPAdjustments_I] Â Â ONÂ [dbo].[budxcWIPAdjustments] AFTER INSERT AS BEGIN Â SET NOCOUNT ON; Â Â UPDATE budxcWIPAdjustments
I'm running the following test query on a single table:
SELECT sph.datestamp, sph.stocksymbol, sph.closing, DATENAME(dw, sph.datestamp), CASE DATENAME(dw, sph.datestamp)Â Â Â WHEN 'Monday' then 'Monday'Â Â ELSE (SELECT CAST(sph2.datestamp AS nvarchar) FROM BI_Test.dbo.StockDB AS sph2 WHERE sph2.DateStamp = DATEADD(d, -1, sph.datestamp) AND sph2.StockSymbol = 'NYA')Â END AS TestCase,
[Code] ....
And here's an example of the output I'm getting:
Why the exact same subquery in the THEN of the second CASE statement is returning NULL when the first one completes as expected?
I have a strange problem occurring when I am using getdate() in a stored proc. I want to get some data from a table within a date range using getdate. I have a begin and end dates on a table and want to retrieve a guid and some other information based on the current date. So, wherever today's date falls between the begin date and the end date, I want the information from that row.
For example,
select * from polldates where (pollbegindate >= getdate() and pollenddate <= getdate())
This works fine Monday through Saturday. I get a value returned from getdate() correctly and am able to retrieve the information that I need. However, on Sunday, getdate returns nothing when I run the stored procedure. Any clues? Am I just crazy or has anyone else seen this type of thing happen?
I have four tables: Customer (CustomerId INT, CountyId INT), County (CountyId INT), Search(SearchId INT), and SearchCriteria (SearchCriteriaId INT, SearchId INT, CountyId INT, [others not related to this]).
I want to search Customer based off of the Search record, which could have multiple SearchCriteria records. However, if there aren't any SearchCriteria records with CountyId populated for a given Search, I want it to assume to get all Customer records, regardless of CountyId.
Right now, I'm doing it this way.
DECLARE @SearchId INT = 100 SELECT * FROM Customer WHERE CountyId IN ( SELECT CASE WHEN EXISTS(SELECT CountyId FROM SearchCriteria WHERE SearchId = @SearchId) THEN SearchCriteria.CountyId
[Code] .....
This works; it just seems cludgy. Is there a more elegant way to do this?
Im really new to SQL SProcs. I have a function that I wrote that I am trying to compare a date within a record to today's date. The problem is that you cant call getdate from within a function... So, I was thinking that I could create a temp table that had a a date column with a default date of today and select that out. However, I cant find any documentation on how you would create a temp table with a default value, or if this would even work. I dont want to have to pass todays date into the function, nor do I want to have to create a permanent table just to hold this data. Any help, or other ideas? Thanks.
Does anybody knows if there is a problem que SQL Server 7.0 in the date?
I Created this Trigger...
CREATE TRIGGER pone_fecha_actual ON Pendent_Invoices FOR INSERT AS UPDATE Pendent_Invoices SET Publication_Date = convert(char(10),getdate(),7) WHERE Publication_Date IS NULL
But when browse the information it appears thie date... 1900-01-01 00:00:00.000
Hello, I useSELECT CONVERT(VARCHAR(30),GETDATE(),105) and get the now data 25-04-2006, but if i want to get the data format is 2006-04-25 How? Thank you!
I am trying to return data from between 2 dates. in this instance it is returning data from yesterday which works fine. However I am trying to return data for yesterday before 12 noon. The following returns yesterdays data. WHERE (dbo.People.SystemUser = 1 AND dbo.Actions.ActionDate > DATEADD(dd, DATEDIFF(dd,0,getdate()), -1) AND dbo.Actions.ActionDate < DATEADD(dd, DATEDIFF(dd,0,getdate()), 0) AND dbo.People.PersonId = 'JO')
How would I get it to return only yesterday before midday's data?
I have the below function which errors out telling me "Invalid use of 'getdate' within a function." I can run it as sql but not as a function, is there an issue with using getdate() in a function?
SET QUOTED_IDENTIFIER ON GO SET ANSI_NULLS ON GO
ALTER function fnGetQuantity( @orderid int ) returns int as /************************************************** **************************** ** File: fnGetQuantity.sql ** Name: fnGetQuantity ** Desc: Used to calculate the total order quantity for an order ** Quantity is sigfrequency.timesperday * sigdosageamt.descr * orders.duration ** ** Return values: Quantity ** ** Called by: ** ** Parameters: order Id ** Input Output ** ---------- ----------- ** @patientid ** Auth: DHoefgen ** Date: 04/30/05 ************************************************** ***************************** ** Change History ************************************************** ***************************** ** Date: Author: Description: ** -------- -------- ------------------------------------------ ** 05/02/05 KKowert Changed sql for effdt and added duration and ** times per day logic for zeros. ************************************************** *****************************/ begin declare @QuantityTotal int
SELECT @QuantityTotal = (o.Duration * f.TimesPerDay * d.Descr) FROM Orders o INNER JOIN SIGFrequency f ON o.FreqID = f.FreqID INNER JOIN SIGDosageAmt d ON o.DosageAmtID = d.DosageAmtID WHERE (o.OrderID = @orderid) AND (f.Effdt = (SELECT MAX(f2.Effdt) FROM SIGFrequency f2 WHERE f2.FreqID = f.FreqID AND f2.Effdt <= getdate())) AND (d.Effdt = (SELECT MAX(d2.Effdt) FROM SIGDosageAmt d2 WHERE d2.DosageAmtID = d.DosageAmtID AND d2.Effdt <= getdate()))
return @QuantityTotal
end
GO SET QUOTED_IDENTIFIER OFF GO SET ANSI_NULLS ON GO
DECLARE @altstartdate datetime SET @altstartdate = getdate() set @altstartdate = @altstartdate -1 select * from tbl_document where convert(char,dicreationdttm,101) = convert(char,@altstartdate,101)
The person who wrote the code was trying to get the previous day of data, So today is 03/07/06, within the database it only have data from 03/06/06 and back 15 days, so what I want is data from 03/06 - -2/20, which I believe is 15 days worth of data, How would I go about geting 15 days of data, do I still need to use getdate() function. Any help please. Thanks
I am trying to return data by date but I also need to return data by date "and" by ID. I've queried various select statements but always get only one days worth of data and the date is repeated many times. I only want to return data for today only but with ID as the other variable.
For example I want only the shows for today by date and by ID. ID of course being the key in the DB. Below I will show you a code block followed by a text version of what it looks like in the browser when tested.
Code Snippet
<% set con = Server.CreateObject("ADODB.Connection") con.Open "File Name=E:webserviceKuowKuow.UDL" set recProgram = Server.CreateObject("ADODB.Recordset") strSQL = "SELECT *, Air_Date AS Expr1 FROM T_Programs WHERE (Air_Date = CONVERT(varchar(10), GETDATE(), 101))"
'strSQL = "SELECT *, Air_Date AS Expr1, Unit AS Expr2 FROM T_Programs WHERE (Air_Date = CONVERT(varchar(10), GETDATE(), 101)) AND (Unit = 'TB')" recProgram.Open strSQL,con %>
<% recProgram.Close con.Close set recProgram = nothing set con = nothing %>
Output: ID Unit Subject Title Long_Summary Body_Text Related_Events Air_Date AudioLink
(Reading across the screen from left to right) 1234 WK1 Subject Title a summary some body text Event text 4/13/2007 wkdy20070413-a.rm
Here is the URL used for testing: http://Test Server IP/test/defaultweekday2.asp
I need to be able to append to this URL an ID number so that not only do I get content by Air_Date but also by ID.
http://Test Server IP/test/defaultweekday2.asp?ID=1234
I'm new to T-SQL and trying out my queries using the SQL Query Analyzer.
What I intend to do is to retrieve records based on current date. The field is Trans_R.Tr_Date, of type nvarchar(255) and the data inside the field is formatted as yyyymmdd.
My Q's are:
1. Where should I put the WHERE statement at?
2. Is there any other way to work around this problem without resorting to converting the Trans_R.Tr_Date field to Datetime datatype beforehand?
3. I tried using Getdate function as part of the WHERE statement but nothing comes out. Would this WHERE statement work (or make sense)?
WHERE Trans_R.Tr_date = getdate()
Please advise and thanks in advance.
------------- START OF CODE -------------
SELECT Cards.card_number,Trans_R.Tr_Date,Trans_R.staff_nu mber, MIN(Trans_R.Tr_In) AS Actual_Time_In, MAX(Trans_R.Tr_Out) AS Actual_Time_Out,
'Status'= CASE WHEN MIN(Trans_R.Tr_In) IS NULL THEN 'ABSENT' WHEN MIN(Trans_R.Tr_In) < 171500 THEN 'ATTEND' ELSE 'ABSENT' END,
'Late Time' = CASE WHEN (MIN(Tr_In) - 080000> 0) THEN (MIN(Tr_In) - 080000) ELSE '' END,
FROM Trans_R INNER JOIN Cards ON Trans_R.Staff_Number = Cards.Staff_Number GROUP BY Cards.card_number,trans_r.staff_Number,Trans_R.Tr_ Date
Can any one tell me how to subtracts and add hours to the current date and time? In my case I have to store the Vancouver date and time in Toronto. Thanks, T.Lingam
I have a requirement where i need to get the current time/date within a Function. As getDate function is a non deterministic function it can not be used with in a function. Your guidence in this regard is greately appreciated.
It is possible to use getdate() in userdefined function. If so, how to do the same ?
The following code throws error :
create function function1 return varchar DECLARE @currYYMM VARCHAR(20) SET @currYYMM = convert(char(4),getdate(),12) // Here it says the error 'getdate' can't be used inside functions ............... .....................
I would like to make the column heading to be the current year for the Sales I'm adding below.
SELECT dbo.QIVSalesMTDYTDCustSalesPerson.slspsn_no,dbo.arslmfil_SQL.slspsn_name, SUM(CASE WHEN year(getdate()) = qivsalesmtdytdcustsalesperson.year THEN Sales END) AS convert(varchar(4),year(getdate())) FROM dbo.QIVSalesMTDYTDCustSalesPerson INNER JOIN dbo.arslmfil_SQL ON dbo.QIVSalesMTDYTDCustSalesPerson.slspsn_no = dbo.arslmfil_SQL.humres_id GROUP BY dbo.QIVSalesMTDYTDCustSalesPerson.slspsn_no, dbo.arslmfil_SQL.slspsn_name
What I have now gives me incorrect syntax near keyword convert.
Hi,I am creating creating a table with a Date column dd-mm-yyyy. But Icant seem to find a SQL function that just returns today's date.getDate() returns the time as well so I cant use it.The reason is simply that I want to update/overwrite over and overagain all records from current day but not touch the ones fromyesterday etc and with the timestamp in there I just end up addingmore and more rows for the same day.In other words I only want to preserve rows are from yesterday orolder but overwrite ones from today.Any help will be appricated.Thank you!Yas
I have a small problem using the GETDATE() function from a JAVA program using the MS JDBC connector.
When I use the SQL Mangment Studio Express to execute this query:
SELECT GETDATE() it returns 2008-04-22 16:25:03.690 which is OK !!
I want to get that same value using a Java program so I do that query but when I display it it shows as:
2008-04-22 and there is no time there ! I tried formatting the date to include time but it shows as: 04/22/2008 12:00:00 AM So maybe the time isn´t there ?
Hi, I want to write a StoredProcedure with one optional input parameter of Date and when it is missing I want current date to be used. I have written the following StoredProcedure, but getdate function doesn`t work. If I replace it with a constant date, it works. ALTER PROCEDURE [dbo].[LinksFees_Record] @Date datetime = getdate AS INSERT INTO LinkSearchFees (LinkID, Price, [Date]) SELECT ID AS LinkID, SearchDayFee AS Price, @Date FROM Links WHERE (SearchDayFee > 0)
RETURN When I call the StoredProcedure the following exception occur: Conversion failed when converting datetime from character string. How can I fix it?
i have a quite strange condition...when i add some value in database with getdate() function it only returns date and minute not the seconds...does somebody have an experience about this
Hello,Our QA team have running a lot of test scripts (for automated regressiontesting), they run them on the different databases (Oracle/MS SQL).Several of those tests are dependent on the current date/time. In order tobeable to use them efficiently, we changed the current date/time on the QAdatabase server to a specific date/time before starting the scripts, so weare sure the test scripts always run in the same environment.Resetting the date/time of the database server gives us more and moreproblems (OS problems, backup/ virusscan, ...).It is possible to fix the problem with SYSDATE function on Oracle by settingFIXED_DATE init parameter.Is it possible to 'change' the current date/time on 'database' level,instead of on OS level for MSSQL2000?Do you know other means to do such things?Thanks in advance,Konstantin
Hi,I have written a stored proc with some temporary tables and also useda getdate() in my stored proc. When i try to call the sproc the erroris that we can only use extended sprocs or function inside a sproc.Now if try to write the stored proc directly inside a fuction ie copypaste after changing my temp tables to tables the problem is , i get aerror invalid use of getdate in sproc.What do i do to get somethingfor my results inside a table.Thanks in advance.RVG
I have the following stored procedure that is returning nothing can anyone please help? SELECT job_id, line_num, cust_id, cust_po_id, product_desc, form_num, revision, flat_size, new_art_reprint, order_qty, po_recieved_date, ord_ent_date, customer_due_date, scheduled_ship_date, act_ship_date, act_ship_qty, ship_from, ship_to, price_per_m, misc_charges, commentsFROM tblOrderWHERE (cust_id = @Cust_Id) AND (po_recieved_date BETWEEN @Start AND @End) When I input parameters I make sure my start date is before the first po_recieved_date and the end date is after it yet it is returning nothing. I also made sure that I am putting the correct @Cust_Id
How do I get my data to show starting at the first row instead of skipping down?
Refer to the attachment.
Code: CREATE PROCEDURE [dbo].[uspReportData] -- Add the parameters for the stored procedure here @Metric1 as varchar(50) = NULL, @Metric2 as varchar(50) = NULL, @Metric3 as varchar(50) = NULL, @Metric4 as varchar(50) = NULL, @Metric5 as varchar(50) = NULL, @Metric6 as varchar(50) = NULL, @Metric7 as varchar(50) = NULL, @Metric8 as varchar(50) = NULL,
I am/have been having an issue with Data Access from a Sql Server database. I have a class that contains a method called "GetDataReader" which takes in a string for the query. Occasionally, the DataReader returned has completely different columns thus resulting in an error when trying to read the data. Below is a small section of code that actually creates the datareader, opens the connection and executes the reader.SqlCommand cmdReader = new SqlCommand(); SqlDataReader drReturn = null; try { // Set the connection for the command object cmdReader.Connection = new SqlConnection(this._csbGlobal.ConnectionString); cmdReader.Connection.Open(); // Set the command type cmdReader.CommandType = Type; // Set the command text cmdReader.CommandText = Sql; // Set the command timeout cmdReader.CommandTimeout = _iTimeout; if (Parameters != null) { // Set the parameters for (int i = 0; i < Parameters.Count; i++) { cmdReader.Parameters.AddWithValue("@" + Parameters.GetKey(i), Parameters[i]); } }
// Get the return value drReturn = cmdReader.ExecuteReader(CommandBehavior.CloseConnection); // Dispose of the command object cmdReader.Dispose(); cmdReader = null; } catch (SqlException e) { this.HandleError(e); } catch (Exception e) { this.HandleError(e); } // Return the reader return drReturn;The data access class is created on each page and only used for that page and any usercontrols on that page. I have checked all the datareaders and they are all being closed. I have been fighting with this issue for about a month and a half now. It only seems to happen when there are a lot of people on the site.If anyone has experienced this or konws how to fix it please let me know. Thanks-Jason