విలువలు() స్టేట్మెంట్లోకి చొప్పించండి
మేము పట్టికలను ఎలా సృష్టించాలో కనుగొన్నాము, SQL ప్రశ్నను ఉపయోగించి పట్టికకు డేటాను ఎలా జోడించాలో ఇప్పుడు వివరంగా చూద్దాం.
వాస్తవానికి, దీన్ని చేయడం చాలా సులభం, కానీ అనేక సూక్ష్మ నైపుణ్యాలు ఉన్నాయి. పట్టికలో డేటాను చొప్పించడానికి సులభమైన ఎంపికకు రెండు విషయాలను పేర్కొనడం అవసరం:
- కాలమ్ పేర్లు
- కాలమ్ విలువలు (డేటా)
కాలమ్ పేర్లు తప్పనిసరిగా పేర్కొనబడాలి, ఎందుకంటే చాలా తరచుగా నిలువు వరుసలు డేటాను చొప్పించేటప్పుడు పేర్కొనబడని డిఫాల్ట్ విలువలను కలిగి ఉంటాయి. మరియు సాధారణంగా ప్రతి పట్టికలో కనీసం అటువంటి నిలువు వరుస ఉంటుంది, ఉదాహరణకు అడ్డు వరుస id.
పట్టికలో డేటాను చొప్పించడానికి ప్రశ్న యొక్క సాధారణ రూపం ఇలా కనిపిస్తుంది:
INSERT INTO table (column1, column2, column3) VALUES
(value1, value2, value3),
(value1, value2, value3),
(value1, value2, value3);
ఉదాహరణకు, మీరు వినియోగదారు పట్టికలో కొత్త రికార్డును చొప్పించాలనుకుంటే, ప్రశ్న ఇలా కనిపిస్తుంది:
INSERT INTO user (name, level, created_time) VALUES
('Rabinovich', 5, ‘2022-06-06’);
ఎంపిక ప్రకటనలో చొప్పించండి
పట్టికలో డేటాను చొప్పించడానికి మరొక సాధారణ దృశ్యం ఏమిటంటే దానిని మరొక పట్టిక, స్కీమా లేదా DBMS నుండి తీసుకోవడం.
దీన్ని చేయడానికి, ప్రశ్న ఆకృతిలో మరొక ఇన్సర్ట్ ఉంది, దీనిలో, VALUES భాగానికి బదులుగా, మీరు డేటాను ఎంచుకోవడానికి ఒక ప్రశ్నను పేర్కొనవచ్చు.
అటువంటి అభ్యర్థన యొక్క సాధారణ రూపం:
INSERT INTO table (column1, column2, column3)
SELECT-request;
ఉద్యోగుల పట్టిక నుండి వినియోగదారు పట్టికకు వినియోగదారులందరినీ జోడించే ప్రశ్నను వ్రాద్దాం:
INSERT INTO user (name, created_time)
SELECT employee.name, employee.join_date
FROM employee;
మేము ఉద్యోగి పట్టికలో వివిధ డేటాను కలిగి ఉన్నాము, కానీ వాటి నుండి మేము రెండు ఫీల్డ్లను మాత్రమే ఎంచుకుంటాము - కంపెనీకి వచ్చిన పేరు మరియు సమయం.
అలాగే, వినియోగదారు పట్టికలో మీరు వినియోగదారు స్థాయి - స్థాయిని పేర్కొనవలసి ఉంటుంది. ఉద్యోగుల పట్టికలో ఉద్యోగులు స్థాయిని కలిగి లేరు, కాబట్టి లెవెల్ ఫీల్డ్ కోసం వినియోగదారు పట్టిక డిఫాల్ట్ విలువను కలిగి ఉందనే వాస్తవాన్ని మేము ఉపయోగిస్తాము. మేము కేవలం స్థాయిని పేర్కొనము మరియు SQL డిఫాల్ట్ విలువను సెట్ చేస్తుంది.
మేము డిఫాల్ట్ విలువతో సంతృప్తి చెందలేదని అనుకుందాం మరియు స్థాయి 99గా ఉండాలని మరియు user.created_timeని నేటి తేదీతో భర్తీ చేయాలనుకుంటున్నాము, అప్పుడు మనం ఇలా వ్రాయవచ్చు:
INSERT INTO user (name, level, created_time)
SELECT employee.name, 99, CURDATE()
FROM employee;
ఇంకా చాలా చేయవచ్చు, కానీ ప్రస్తుతానికి ఇది సరిపోతుందని నేను భావిస్తున్నాను. మీరు అధికారిక MySQL పేజీలో మరింత చదవవచ్చు.
GO TO FULL VERSION