فهرست سرفصل‌های MySQL
خانه (HOME) مقدمه (Intro) پایگاه داده رابطه ای (RDBMS) SQL (SQL) SELECT (SELECT) WHERE (WHERE) عملگرهای AND, OR, NOT (AND, OR, NOT) مرتب سازی (ORDER BY) افزودن رکورد (INSERT INTO) مقادیر NULL (NULL Values) بروزرسانی (UPDATE) حذف (DELETE) محدودیت تعداد (LIMIT) کمینه و بیشینه (MIN and MAX) COUNT، AVG، SUM (COUNT, AVG, SUM) LIKE (LIKE) کاراکترهای عام (Wildcards) IN (IN) BETWEEN (BETWEEN) نام های مستعار (Aliases) اتصال ها (Joins) INNER JOIN (INNER JOIN) LEFT JOIN (LEFT JOIN) RIGHT JOIN (RIGHT JOIN) CROSS JOIN (CROSS JOIN) خود-اتصالی (Self Join) UNION (UNION) UNION ALL (UNION ALL) گروه بندی (GROUP BY) HAVING (HAVING) EXISTS (EXISTS) ANY و ALL (ANY, ALL) INSERT SELECT (INSERT SELECT) CASE (CASE) توابع Null (Null Functions) کامنت ها (Comments) عملگرها (Operators) ایجاد پایگاه داده (Create DB) حذف پایگاه داده (Drop DB) ایجاد جدول (Create Table) حذف جدول (Drop Table) تغییر جدول (Alter Table) قیود (Constraints) Not Null (Not Null) منحصر به فرد (Unique) کلید اصلی (Primary Key) کلید خارجی (Foreign Key) CHECK (Check) پیش فرض (Default) ایندکس (Create Index) افزایش خودکار (Auto Increment) تاریخ ها (Dates) نماها (Views) انواع داده (Data Types) توابع (MySQL Functions) ASCII (ASCII) CHAR_LENGTH (CHAR_LENGTH) CHARACTER_LENGTH (CHARACTER_LENGTH) CONCAT (CONCAT) CONCAT_WS (CONCAT_WS) FIELD (FIELD) FIND_IN_SET (FIND_IN_SET) FORMAT (FORMAT) INSERT (INSERT) INSTR (INSTR) LCASE (LCASE) LEFT (LEFT) LENGTH (LENGTH) LOCATE (LOCATE) LOWER (LOWER) LPAD (LPAD) LTRIM (LTRIM) MID (MID) POSITION (POSITION) REPEAT (REPEAT) REPLACE (REPLACE) REVERSE (REVERSE) RIGHT (RIGHT) RPAD (RPAD) RTRIM (RTRIM) SPACE (SPACE) STRCMP (STRCMP) SUBSTR (SUBSTR) SUBSTRING (SUBSTRING) SUBSTRING_INDEX (SUBSTRING_INDEX) TRIM (TRIM) UCASE (UCASE) UPPER (UPPER) ABS (ABS) ACOS (ACOS) ASIN (ASIN) ATAN (ATAN) ATAN2 (ATAN2) AVG (AVG) CEIL (CEIL) CEILING (CEILING) COS (COS) COT (COT) COUNT (COUNT) DEGREES (DEGREES) DIV (DIV) EXP (EXP) FLOOR (FLOOR) GREATEST (GREATEST) LEAST (LEAST) LN (LN) LOG (LOG) LOG10 (LOG10) LOG2 (LOG2) MAX (MAX) MIN (MIN) MOD (MOD) PI (PI) POW (POW) POWER (POWER) RADIANS (RADIANS) RAND (RAND) ROUND (ROUND) SIGN (SIGN) SIN (SIN) SQRT (SQRT) SUM (SUM) TAN (TAN) TRUNCATE (TRUNCATE) ADDDATE (ADDDATE) ADDTIME (ADDTIME) CURDATE (CURDATE) CURRENT_DATE (CURRENT_DATE) CURRENT_TIME (CURRENT_TIME) CURRENT_TIMESTAMP (CURRENT_TIMESTAMP) CURTIME (CURTIME) DATE (DATE) DATEDIFF (DATEDIFF) DATE_ADD (DATE_ADD) DATE_FORMAT (DATE_FORMAT) DATE_SUB (DATE_SUB) DAY (DAY) DAYNAME (DAYNAME) DAYOFMONTH (DAYOFMONTH) DAYOFWEEK (DAYOFWEEK) DAYOFYEAR (DAYOFYEAR) EXTRACT (EXTRACT) FROM_DAYS (FROM_DAYS) HOUR (HOUR) LAST_DAY (LAST_DAY) LOCALTIME (LOCALTIME) LOCALTIMESTAMP (LOCALTIMESTAMP) MAKEDATE (MAKEDATE) MAKETIME (MAKETIME) MICROSECOND (MICROSECOND) MINUTE (MINUTE) MONTH (MONTH) MONTHNAME (MONTHNAME) NOW (NOW) PERIOD_ADD (PERIOD_ADD) PERIOD_DIFF (PERIOD_DIFF) QUARTER (QUARTER) SECOND (SECOND) SEC_TO_TIME (SEC_TO_TIME) STR_TO_DATE (STR_TO_DATE) SUBDATE (SUBDATE) SUBTIME (SUBTIME) SYSDATE (SYSDATE) TIME (TIME) TIME_FORMAT (TIME_FORMAT) TIME_TO_SEC (TIME_TO_SEC) TIMEDIFF (TIMEDIFF) TIMESTAMP (TIMESTAMP) TO_DAYS (TO_DAYS) WEEK (WEEK) WEEKDAY (WEEKDAY) WEEKOFYEAR (WEEKOFYEAR) YEAR (YEAR) YEARWEEK (YEARWEEK) BIN (BIN) BINARY (BINARY) CASE (CASE) CAST (CAST) COALESCE (COALESCE) CONNECTION_ID (CONNECTION_ID) CONV (CONV) CONVERT (CONVERT) CURRENT_USER (CURRENT_USER) DATABASE (DATABASE) IF (IF) IFNULL (IFNULL) ISNULL (ISNULL) LAST_INSERT_ID (LAST_INSERT_ID) NULLIF (NULLIF) SESSION_USER (SESSION_USER) SYSTEM_USER (SYSTEM_USER) USER (USER) VERSION (VERSION) مثال ها (MySQL Examples) ویرایشگر (MySQL Editor) آزمون (MySQL Quiz) تمارین (MySQL Exercises) سرفصل (MySQL Syllabus) برنامه مطالعه (MySQL Study Plan) گواهینامه (MySQL Certificate)
نتیجه‌ای برای جستجو یافت نشد.
MySQL

MySQL — تاریخ ها (Dates)

آخرین بروزرسانی: 1404/08/18

تاریخ ها (Dates)

وقتی با تاریخ (Date) کار می کنی، مهم ترین چیز فرمت است. فرمت ستون باید با داده ورودی یکی باشد. اگر زمان هم باشد، کار کمی سخت تر می شود.

انواع داده تاریخ در MySQL

MySQL چند نوع داده برای تاریخ و زمان دارد. هرکدام فرمت مشخصی دارند و باید همان را رعایت کنی.

  • DATE — فرمت: YYYY-MM-DD
  • DATETIME — فرمت: YYYY-MM-DD HH:MI:SS
  • TIMESTAMP — فرمت: YYYY-MM-DD HH:MI:SS
  • YEAR — فرمت: YYYY یا YY

نکته: نوع تاریخ را هنگام ساخت جدول تنظیم می کنی.

کار با تاریخ ها

اگر ستون فقط تاریخ داشته باشد، مقایسه ساده است. اما وقتی زمان هم باشد، نتیجه تغییر می کند.

مثال: جست وجوی رکوردهای یک تاریخ مشخص

در جدول Orders می خواهیم سفارش های تاریخ «2008-11-11» را بگیریم.

SELECT *
FROM Orders
WHERE OrderDate = '2008-11-11';

مشاهده در ادیتور

هشدار: اگر ستون زمان هم داشته باشد، این کوئری نتیجه نمی دهد. چون دقیقاً به دنبال «فقط تاریخ» می گردد.

راهنمای سریع

  1. نوع داده درست را انتخاب کن.
  2. فرمت ورودی را دقیق رعایت کن.
  3. در صورت امکان، زمان را جدا نگه دار.

نکته: برای سادگی کوئری ها، تا لازم نیست زمان را ذخیره نکن.

مطالب مرتبط: افزایش خودکار (Auto Increment) برای شناسه ها. همچنین تاریخ در MySQL را به عنوان مرجع نگه دار.

جمع بندی سریع

  • فرمت تاریخ باید دقیق باشد.
  • تاریخ بدون زمان، مقایسه را ساده می کند.
  • وجود زمان، نتیجه جست وجو را عوض می کند.
  • نوع مناسب ستون را از اول تعیین کن.