मैं कोशिश कर रहा हूँ:
SELECT *
FROM dbo.March2010 A
WHERE A.Date >= 2010-04-01;
A.Date
की तरह लगता है: 2010-03-04 00:00:00.000
हालांकि, यह काम नहीं कर रहा है।
क्या कोई इसके लिए एक संदर्भ प्रदान कर सकता है?
मैं कोशिश कर रहा हूँ:
SELECT *
FROM dbo.March2010 A
WHERE A.Date >= 2010-04-01;
A.Date
की तरह लगता है: 2010-03-04 00:00:00.000
हालांकि, यह काम नहीं कर रहा है।
क्या कोई इसके लिए एक संदर्भ प्रदान कर सकता है?
जवाबों:
select *
from dbo.March2010 A
where A.Date >= Convert(datetime, '2010-04-01' )
आपकी क्वेरी में, 2010-4-01
एक गणितीय अभिव्यक्ति के रूप में माना जाता है, इसलिए संक्षेप में यह पढ़ा जाता है
select *
from dbo.March2010 A
where A.Date >= 2005;
( 2010 minus 4 minus 1 is 2005
इसे उचित रूप में बदलना datetime
, और एकल उद्धरण का उपयोग करने से यह समस्या ठीक हो जाएगी।)
तकनीकी रूप से, पार्सर आपको दूर जाने की अनुमति दे सकता है
select *
from dbo.March2010 A
where A.Date >= '2010-04-01'
यह आपके लिए रूपांतरण करेगा, लेकिन मेरे विचार से यह DateTime
रखरखाव प्रोग्रामर के लिए स्पष्ट रूप से परिवर्तित करने की तुलना में कम पठनीय है जो आपके बाद आएगा।
SET LANGUAGE FRENCH
। :-) उस तारीख के लिए आपको 1 अप्रैल के बजाय 4 जनवरी मिलेगा। अन्य तारीखों के लिए आपको इसके बजाय एक त्रुटि मिल सकती है।
CONVERT(datetime, '20100401 10:01:01')
- 2010-04-01 SQL सर्वर प्रबंधन स्टूडियो में काम करता है, लेकिन PHP / MSSQL के माध्यम से SQL कथन भेजते समय नहीं।
अपनी तिथि को वर्ण स्ट्रिंग में संलग्न करने का प्रयास करें।
select *
from dbo.March2010 A
where A.Date >= '2010-04-01';
हम नीचे की तरह भी उपयोग कर सकते हैं
SELECT *
FROM dbo.March2010 A
WHERE CAST(A.Date AS Date) >= '2017-03-22';
SELECT *
FROM dbo.March2010 A
WHERE CAST(A.Date AS Datetime) >= '2017-03-22 06:49:53.840';
DateTime start1 = DateTime.Parse(txtDate.Text);
SELECT *
FROM dbo.March2010 A
WHERE A.Date >= start1;
पहले टेक्सबॉक्स को डेटाटाइम में कन्वर्ट करें .... फिर उस वेरिएबल को क्वेरी में उपयोग करें