不要な日付形式のフィールドを含むクエリを取得しています(Thu Feb 21 00:00:00 EST 2013)これをmm-dd-yyyに変更する方法はありますか?
私はjavascriptを使用していて、それを行うためのphpの方法を見つけましたが、残念ながらそれはjavascriptである必要があるため、命令はTOADでの場合とほとんど同じである必要があります。
CONVERT()メソッドを試しましたが、機能しませんでした。正しく使っているかわかりませんが
不要な日付形式のフィールドを含むクエリを取得しています(Thu Feb 21 00:00:00 EST 2013)これをmm-dd-yyyに変更する方法はありますか?
私はjavascriptを使用していて、それを行うためのphpの方法を見つけましたが、残念ながらそれはjavascriptである必要があるため、命令はTOADでの場合とほとんど同じである必要があります。
CONVERT()メソッドを試しましたが、機能しませんでした。正しく使っているかわかりませんが
Convert()関数は機能しますが、ここから正しいフォーマットコードを使用する必要があります: SQL Convert()関数。
SELECT Convert(char(10), @date, 110)
Date.jsは、日付の書式設定に非常に便利です。
JSには、使用できる基本的なDateオブジェクト関数があります。
まず、日付変数を作成します。
var date = new Date('your date value');
次に、個々の日付部分にアクセスできます。
var month = date.getMonth() + 1; //gets the month . . . it's 0-based, so add 1
var day = date.getDate(); //gets the day of the month
var year = date.getFullYear(); //gets the 4-digit year
これらの値を取得したら、任意の形式でそれらを連結できます。基本的なmm-dd-yyyyには、次を使用します。
var formattedDate = month + "-" + day + "-" + year;
時間とタイムゾーンの値も利用できます。
おそらく、UNIX タイムスタンプに変換してからフォーマットしてみてください。私はこれをテストしておらず、おそらくエラーがスローされるでしょうが、あなたはその考えを理解しています.
var input = your date;
input = input.split(" - ").map(function (date){
return Date.parse(date+"-0500")/1000;
}).join(" - ");
var year = input.getYear();
var month = input.getMonth();
var day = input.getDay();
var hours = input.getHours();
var minutes = input.getMinutes();
var seconds = input.getSeconds();
var formatted = month + " " + day + ", " + year + " at " hours + ':' + minutes + ':' + seconds;
それはひどく混乱したフォーマットです。それを変更するには 2 つの基本的な方法があります。1 つはビットを並べ替える方法、もう 1 つはそれを日付オブジェクトに変換し、それを使用して新しい文字列を作成する方法です。いずれにせよ、タイムゾーンのオフセットをどうするかについてはまだ述べていません。
タイムゾーンに略語や名前を使用することはあいまいです。それらには標準がなく、重複しているものもあります (EST は 3 つの異なるタイムゾーンに使用されます)。いずれにせよ、単純な並べ替えは次のようになります。
function formatDate(s) {
var months = {jan:'01', feb:'02', mar:'03', apr:'04',
may:'05', jun:'06', jul:'07', aug:'08',
sep:'09', oct:'10', nov:'11', dec:'12'};
var s = s.split(' ');
var d = (s[2] < 10? '0' : '') + s[2];
return months[s[1].toLowerCase()] + '-' + d + '-' + s[5];
}
alert(formatDate('Thu Feb 21 00:00:00 EST 2013')); // 02-21-2013
出力形式 (mm-dd-yyyy) はあいまいです。21-Feb-2013 のような形式または ISO8601 (2013-02-21) のような標準形式の使用を検討してください。
タイムゾーンを考慮する必要がある場合は、日付オブジェクトを作成し、オフセットを追加してから、新しい日付を取得する方が簡単です。ただし、文字列のタイムゾーンを、日付で使用できる数値 (できれば分ですが、時間でもかまいません) に変換する方法も検討する必要があります。