Come sottrarre una durata fissa dalla colonna Data Ora?Ho una tabella dati con entryDate come una delle colonne. Contiene voci di riga nel seguente formato
07/07/2023 08:20:21
Voglio sottrarre quanto segue un offset da esso e ottenere newEntryDate in una nuova colonna.
184 giorni, 14 ore, 14 minuti e 43 secondi
(o 6 mesi, 2 giorni, 14 ore, 14 minuti, 43 secondi)
Come farlo in JMP/JSL?
Inoltre, qualsiasi newEntryDate che risulta in un valore negativo dopo l'operazione precedente deve essere sostituito dalla voce di riga corrispondente nella colonna entryDate. Posso farlo manualmente, ma è preferibile un'opzione formula/JSL.
Automazione e scriptingfinestreRi: Come sottrarre una durata fissa dalla colonna Data Ora?Converti il tuo tempo in secondi e poi potrai detrarlo
:entryDate - (In Days(184) + In hours(14) + In Minutes(14) + 43)
Ri: Come sottrarre una durata fissa dalla colonna Data Ora?@jthi Grazie. Ci sono quasi riuscito ma non mi sono reso conto che 43 potesse essere sottratto direttamente. Stavo cercando a In secondi () funzione.
Mentre sono su questo argomento, come posso ottenere la differenza/durata in secondi tra :data di ingresso E :newEntryDate ?
Ri: Come sottrarre una durata fissa dalla colonna Data Ora?Date, ore e datetime vengono archiviate come numero di secondi. Quindi per ottenere la differenza tra due date in secondi basta sottrarne una dall'altra.
Se vuoi la differenza in altre unità puoi usare il Differenza di data() funzione.
Per saperne di più: Utilizzo di date, ore, date e durate in JMP .
Ri: Come sottrarre una durata fissa dalla colonna Data Ora?@Jeff_Perkinson . Ok grazie. Come converto la data nel formato che ho in secondi?
Ri: Come sottrarre una durata fissa dalla colonna Data Ora?>> È di tipo numerico e continuo
Se la colonna della data è numerica/continua come hai specificato, allora è già in pochi secondi, dietro le quinte per così dire.È necessario aver specificato un formato di colonna di m/d/ah:m:s .Se desideri visualizzare i secondi, utilizza un formato numerico.
Ecco una tabella in cui la prima colonna utilizza il formato data e la seconda utilizza il formato numerico:

New Table( "Test Date", Add Rows( 2 ),
New Column( "Date Format", Numeric, "Continuous",
Format( "m/d/y h:m:s", 23, 0 ),
Input Format( "m/d/y h:m:s", 0 ),
Set Values( [3771562821, 3771562821] )
),
New Column( "Date in Seconds", Numeric, "Continuous", Format( "Best", 12 ),
Formula( :Date Format )
)
);