MySQL CAST ක්‍රියාකාරකම පැහැදිලි කිරීම: ව්‍යවස්ථාව, උදාහරණ, දත්ත වර්ග පරිවර්තනය සහ හොඳම ක්‍රියාමාර්ග

目次

1. CAST ශක්තියේ මූලික සංකල්පය

CAST ශක්තිය කුමක්ද?

මයිස්ක්වල් CAST ශක්තිය යනු දත්ත වර්ග පරිවර්තනය කිරීම සඳහා භාවිතා වන SQL ශක්තියකි. එය නිශ්චිත ප්‍රකාශනයක් අනෙකුත් දත්ත වර්ගයකට පරිවර්තනය කරයි. CAST ශක්තිය භාවිතා කිරීමෙන්, උදාහරණයක් ලෙස, වාක්‍ය රේඛාවක් සංඛ්‍යාත්මකයකට හෝ දින වර්ගයක් වාක්‍ය රේඛාවකට පරිවර්තනය කළ හැක. එය දත්ත වර්ග ස්ථිරභාවය රැකගැනීම සඳහා දත්තගබඩා මෙහෙයුම්වලදී නිතර භාවිතා වන උපකාරී මෙවලමකි.

CAST ශක්තියේ ප්‍රධාන භාවිතයන්

CAST ශක්තියට විශාල භාවිත පරාසයක් ඇති අතර, පහත සඳහන් තත්ත්වයන්හිදී බහුලව භාවිතා වේ:

  • දත්ත සමානකරණය : විවිධ ආකෘතිවල ගබඩා කර ඇති දත්ත සමානකරණය කිරීම සඳහා භාවිතා වේ. උදාහරණයක් ලෙස, පුවත්පත්කරණයක ගබඩා කර ඇති දින ආකෘති ඒකාබද්ධ කිරීමට එය උපකාරී වේ.
  • දත්ත වර්ග පරිවර්තනය : සංඛ්‍යාත්මක සංඛ්‍යා වාක්‍ය රේඛාවන්ට හෝ ඒ විපරීතව පරිවර්තනය කිරීමෙන් දත්ත ප්‍රදර්ශනය සහ ගණනය කිරීම උපචාරණය කිරීම.
    SELECT CAST('2023-09-22' AS DATE);
    

CAST ශක්තිය සහ අනෙකුත් දත්ත වර්ග පරිවර්තන අතර වෙනස

CAST ශක්තිය මයිස්ක්වල් පරිවර්තන ශක්තිවලින් (උදාහරණයක් ලෙස CONVERT) සමාන යි, නමුත් ප්‍රධාන වෙනස වන්නේ CAST SQL ප්‍රමිතියට අනුකූල වීම සහ වැඩි දත්තගබඩා පද්ධතිවලින් සහාය ලබා ගැනීමයි. CONVERT මයිස්ක්වල් විශේෂයෙන් යි සහ ප්‍රධාන වශයෙන් අක්ෂර සෙට් පරිවර්තනය වැනි විශේෂ අරමුණු සඳහා භාවිතා වේ.

2. CAST ශක්තියේ ව්‍යාකරණය සහ භාවිතය

CAST ශක්තියේ ව්‍යාකරණය

CAST ශක්තියේ මූලික ව්‍යාකරණය පහත පරිදියි:

CAST(expression AS data_type)

මෙම ව්‍යාකරණයේදී, පරිවර්තනය කළ යුතු වටිනාකම ප්‍රකාශන කොටසේ සඳහන් කරන්න සහ ඉලක්ක දත්ත වර්ගය data_type කොටසේ සඳහන් කරන්න.

CAST ශක්තිය භාවිතා කිරීමේ උදාහරණ

  • සංඛ්‍යාත්මක වර්ගයකට පරිවර්තනය : වාක්‍ය රේඛාවක් සංඛ්‍යාත්මකයකට පරිවර්තනය කිරීමේදී භාවිතා වේ.
    SELECT CAST('123' AS SIGNED);
    
  • වාක්‍ය රේඛා වර්ගයකට පරිවර්තනය : සංඛ්‍යාත්මක වටිනාකමක් වාක්‍ය රේඛාවකට පරිවර්තනය කිරීමේදී භාවිතා වේ.
    SELECT CAST(123 AS CHAR);
    

දෝෂ කළමනාකරණය

CAST ශක්තිය භාවිතා කිරීමේදී, ඉලක්ක දත්ත වර්ගය සඳහා වැරදි වටිනාකමක් සපයූ විට දෝෂ සිදුවිය හැක. උදාහරණයක් ලෙස, 'abc' සංඛ්‍යාත්මක වටිනාකමකට පරිවර්තනය කිරීමේ උත්සාහයක් දෝෂයක් ඇති කරයි. මෙවැනි අවස්ථාවලදී, IFNULL වැනි ශක්ති සමග ඒකාබද්ධ කරමින් දෝෂ කළමනාකරණය කිරීම යෝජනා කෙරේ.

3. සාමාන්‍යයෙන් භාවිතා වන දත්ත වර්ග සහ පරිවර්තන උදාහරණ

දත්ත වර්ග පරිවර්තනය සඳහා සාමාන්‍ය තත්ත්වයන්

CAST ශක්තිය සමග, පහත දත්ත වර්ගවලට පරිවර්තනය කිරීම සාමාන්‍යයෙන් සිදු වේ:

  • INT වර්ගය : වටිනාකමක් සංඛ්‍යාත්මක වර්ගයකට පරිවර්තනය කරයි.
  • VARCHAR වර්ගය : සංඛ්‍යාත්මක හෝ දින වටිනාකම් වාක්‍ය රේඛාවන්ට පරිවර්තනය කරයි.
  • DATE වර්ගය : වාක්‍ය රේඛාවන් හෝ සංඛ්‍යාත්මක වටිනාකම් දිනවලට පරිවර්තනය කරයි.

INT වර්ගයකට පරිවර්තනය

SELECT CAST('456' AS SIGNED);

මෙම උදාහරණයේදී, වාක්‍ය රේඛාව '456' සංඛ්‍යාත්මක වර්ගයකට පරිවර්තනය වේ.

VARCHAR වර්ගයකට පරිවර්තනය

SELECT CAST(456 AS CHAR);

මෙය සංඛ්‍යාත්මකයක් වාක්‍ය රේඛාවකට පරිවර්තනය කිරීමේ උදාහරණයකි. මෙම මෙහෙයුම නිශ්චිත ආකෘතියකින් දත්ත ප්‍රදර්ශනය කිරීමට අවශ්‍ය වන විට උපකාරී වේ.

DATE වර්ගයකට පරිවර්තනය

SELECT CAST('2024-01-01' AS DATE);

මෙය වාක්‍ය රේඛාවක් දින වර්ගයකට පරිවර්තනය කරයි. මෙලෙස, දත්ත නිවැරදිව ගබඩා වන අතර පසුව දින මෙහෙයුම් සඳහා භාවිතා කළ හැක.

4. CAST ශක්තිය සඳහා වැදගත් සටහන් සහ හොඳම පුරුදු

CAST ශක්තිය භාවිතා කිරීමේදී වැදගත් සටහන්

CAST ශක්තිය භාවිතා කිරීමේදී සලකා බැලිය යුතු කිහිපයක් වැදගත් කරුණු ඇත:

  1. වර්ග සමගිය : වැරදි පරිවර්තන දෝෂ ඇති කළ හැකි බැවින්, වර්ග සමගිය advance වශයෙන් සත්‍යාපනය කළ යුතුය.
  2. දත්ත නිරවද්‍යතාවයේ හානිය : විශේෂයෙන් ගුණාංක සංඛ්‍යා පරිවර්තනයේදී, දත්ත නිරවද්‍යතාවය හානි විය හැක.

හොඳම පුරුදු

  • DECIMAL වර්ගය භාවිතා කරන්න : ගුණාංක සංඛ්‍යා පරිවර්තනය කිරීමේදී, නිරවද්‍යතාවය හානි වීම වැළැක්වීම සඳහා DECIMAL වර්ගය භාවිතා කරන්න.
    SELECT CAST(123.456 AS DECIMAL(5,2));
    
  • දෝෂ කළමනාකරණය : අනපේක්ෂිත දත්ත වර්ග මිශ්‍ර වන විට, IFNULL හෝ CASE ප්‍රකාශන භාවිතා කරමින් දෝෂ කළමනාකරණය කිරීම යෝජනා කෙරේ.

5. CAST ශක්තිය සහ CONVERT ශක්තිය අතර වෙනස්කම්

CAST සහ CONVERT සංසන්දනය

Both CAST and CONVERT are used to convert data types, but they differ in syntax and purpose.

  • CAST function : Widely used in standard SQL, with the syntax CAST(expression AS data_type) .
  • CONVERT function : A MySQL-specific function with the syntax CONVERT(expression, data_type) .

CONVERT ක්‍රියාවලිය භාවිතා කිරීමේ උදාහරණය

The CONVERT function is mainly used for character set conversion.

SELECT CONVERT('abc' USING utf8);

In this example, the character set of the string is converted.

ඔබට කුමන එක භාවිතා කළ යුතුද?

In general, it is recommended to use the CAST function because it follows the SQL standard and is widely supported. However, when character set conversion is required, the CONVERT function is more appropriate.

6. ප්‍රායෝගික උදාහරණ: CAST ක්‍රියාවලිය භාවිතා කර දත්ත සැකසීම

වාස්තුක දත්ත සැකසීමේ උදාහරණ

Here are examples of performing actual data operations using the CAST function.

සංඛ්‍යා වර්ගයන් ස්ට්‍රින් වලට පරිවර්තනය කිරීමෙන් පසු අනුක්‍රමණය

For example, when converting numeric values into strings before sorting, you can write the query as follows:

SELECT CAST(column_name AS CHAR) FROM table ORDER BY column_name;

ස්ට්‍රින් වලට පරිවර්තනය කිරීමෙන් පසු සංඛ්‍යා වලට පරිවර්තනය කිරීමෙන් පසු පෙරහන් කිරීම

You can also convert strings into numbers and filter based on a specific range.

SELECT * FROM table WHERE CAST(column_name AS SIGNED) > 100;

7. නිගමනය

ලිපියේ සාරාංශය

The CAST function is extremely useful for efficiently converting data types. In this article, we covered everything from basic usage to practical examples. When performing data type conversions, always pay attention to type compatibility and data precision, and make full use of the CAST function in your database operations.