DEFAULT() - Table Column Default Value

Q

How to obtain the default value of a table column using the DEFAULT() function?

✍: FYIcenter.com

A

DEFAULT(col) is a MySQL built-in function that returns the default value of a given table column. For example:

CREATE TABLE MyTable (Weight FLOAT, Height FLOAT DEFAULT 1.7);

INSERT INTO MyTable (Weight) VALUES (70);
INSERT INTO MyTable (Weight, Height) VALUES (72, DEFAULT(Height)+0.1);

SELECT Weight, Height, DEFAULT(Height) FROM MyTable;

  -- +--------+--------+-----------------+
  -- | Weight | Height | DEFAULT(Height) |
  -- +--------+--------+-----------------+
  -- |     70 |    1.7 |             1.7 |
  -- |     72 |    1.8 |             1.7 |
  -- +--------+--------+-----------------+

Note that calling DEFAULT() on a column that has no default value may get NULL or error. For example,

SELECT Weight, Height, DEFAULT(Weight) FROM MyTable;
  -- +--------+--------+-----------------+
  -- | Weight | Height | DEFAULT(Weight) |
  -- +--------+--------+-----------------+
  -- |     70 |    1.7 |            NULL |
  -- |     72 |    1.8 |            NULL |
  -- +--------+--------+-----------------+

SELECT DEFAULT(name) FROM mysql.help_topic;
ERROR 1364 (HY000): Field 'name' doesn't have a default value

Reference information of the DEFAULT() function:

DEFAULT(col): val
  Returns the default value of a given table column. 

Arguments, return value and availability:
  col: Required. The table column to be examined. 
  val: Return value. The default value of the column.
  Available since MySQL 4.0.

 

EXTRACTVALUE() - Extracting Text Content from XML

CONVERT() - Character Set Conversion

MySQL Functions for Miscellaneous Purposes

⇑⇑ MySQL Function References

2023-12-19, 220🔥, 0💬