2つの異なる列に予定の開始日と終了日を格納するテーブルがあります。どちらも日時です。古いデータを簡単にインポートできます。私は構造を変更することはできません。私はMicrosoft SQL Serverを使用しています。2つの日付タイムスタンプと最初の日付と2番目の日付とを結合します。
ApptDate ApptTime
2012-02-16 00:00:00.000 1899-12-30 11:45:00.000
2012-02-16 00:00:00.000 1899-12-30 13:15:00.000
2012-02-16 00:00:00.000 1899-12-30 13:30:00.000
私がする必要があるのは、これらの2つの日付時刻を1つにまとめることです。私はストアドプロシージャを呼び出しています。私の質問は、これを行うための最善の方法は何ですか?
ALTER PROCEDURE [dbo].[GetTodaysAppointsNonRepeating]
-- Add the parameters for the stored procedure here
@DateToday DATETIME, @ClientID INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
SELECT a.ID, a.ApptDate, a.ApptTime, a.ApptLength, a.checkedin, a.Entered, a.UserID, a.ProviderID, a.PatientID, CASE WHEN patient.FirstName is null then a.Name END as name,
CASE WHEN HomePhone !='' then HomePhone WHEN WorkPhone !='' THEN WorkPhone ELSE CellPhone END as Telephone
FROM Appointments as a INNER JOIN Patient on a.PatientID = patient.id and
a.clientid = patient.clientid WHERE ApptDate = @DateToday and a.ClientID = @ClientID
AND RepeatType = 'N'
END
?そのコードは製品固有です。 – jarlh
[日付と時刻の結合(連結)](https://stackoverflow.com/questions/18622384/combining-concatenating-date-and-time-into-a-datetime)の重複が考えられます。選択した答えをAaron Bertrandからチェックしてください。 –
SQL Serverのように見えますか?確認してください。 – MatBailie