10 سوال رایج ازدستورات SQL در مصاحبه ها

10 سوال رایج ازدستورات SQL در مصاحبه ها


SQLهنوز هم زبان برنامه نویسی مهمی است. این زبان در چندین سازمان در سراسر جهان استفاده می شوند. وقتی به مصاحبه کاری برای شغل برنامه مویسی می روید، بیشتر سوالات درباره SQL است. مصاحبه کننده توقع دارد که شما جواب سوال های مربوط به SQL را بلد باشید.

 اگر یکی دوسالی در پروژه های وب کارکرده باشید، احتمالاً می دانید که چطور پایگاه داده ها را اداره کنید، برنامه دستوراتSQLرا بنویسید، چطور پرونده ای را وارد، به روز رسانی، حذف یا انتخاب کنید. در اینجا به 10 سوال مهمی که جزء سوالات SQL در مصاحبه ها هستند، می پردازیم:
1.    دستور SQL برای یافتن دومین حقوق بیشتر کارمندان را بنویسید
به روش های مختلفی می توانید به این سوال پاسخ دهید. می توانید از SQL Joint یا Subquery برای حل این مسأله استفاده کنید. این سوال را می توان با استفاده از دستور زیر حل کرد:


select MAX(Salary) from Employee WHERE Salary NOT IN (select MAX(Salary) from Employee);.


2.     دستور SQL برای یافتن حقوق ماکسیمم در هر بخش را بنویسید
می توانید حقوق ماکسیمم در هر بخش را با گروه بندی کردن همه پرونده ها انجام دهید. با استفاده از DepID و سپس با کمک دستور Max، حقوق ماکسیمم در هر گروه یا بخش را محاسبه کنید:

SELECT DepID,Max(Salary) FROM Empoloyee GROUP BY DepID

.
3.    دستور SQL برای نشان دادن تاریخ را بنویسید
SQLدستوری دارد که می توانید با آن تاریخ را بیابید. اگر از این دستور استفاده کنید، نمایش تاریخ برمی گردد. این دستور در سرورSQL مایکروسافت و دیگر نرم افزارها، مثل Oracle و MySQL کار می کند.


SELECT GetDate();

4.    دستور SQLرا بنویسید تا بررسی کند که آیا تاریخی که در دستور عنوان شده با تاریخ فرمت یکی است یا خیر
SQL فرمانی در خودش دارد که فرمت خاص تاریخ داده شده را بررسی کند. می توانید از فرمان IaDate() برای این هم استفاده کنید. فرمان MSSQL هم هست که شاید در Oracle یا MySQL یا هر پایگاه داده ای دیگری پشتیبانی نشود.


SELECT ISDate)’1/08/13’) AS “MM/DD/YY”);

5.    دستور SQL برای پرینت نام کارمندی مشخص که DOB وی بین 01/01/1960 تا 31/12/1975 باشد
این دستوری زیرکانه است که می توانید با استفاده از آن در عبارت، تمام پرونده هایی که به شامل این تاریخ هستند را به دست آورید. با ترکیب زیر پاسخ را می یابید.


SELECT DISTINCT EmpName FROM Employees WHERE DOB BETWEEN ‘01/01/1960’ AND ‘31/12/1975’;

6.    دستور SQL بنویسید که شماره کارمندی را با توجه به جنسیتش بیابد که DOB وی بین 01/01/1960 تا 31/12/1975 باشد
پاسخ به این سوال بسیار آسان است. از عبارتی ساده برای کسب پاسخ استفاده کنید:


SELECT COUNT(*), sex from Employees WHERE DOB BETWEEN '01/01/1960' AND '31/12/1975' GROUP BY sex;

7.    دستور SQL بنویسید که کارمندی را بیابد که حقوقش برابر یا بیشتر از 10000باشد


SELECT EmpName FROM Employees WHERE Salary>=10000;

8.    دستور SQL برای یافتن سال از تاریخ را بنویسید
می توانید با دستور زیر، در سرور SQL 2008 ، سال را از تاریخ  به دست آورید


SELECT YEAR(GETDATE()) as "Year";

9.    دستور SQL برای یافتن سطرهای تکراری در پایگاه داده ها را بنویسید. سپس دستور SQL برای حذف آنها را قید کنید.
می توانید از دستور ساده ای مثل زیر برای انتخاب داده ای مشخص در پرونده ای خاص استفاده کنید


SELECT * FROM emp a WHERE rowid = (SELECT MAX(rowid) FROM EMP b WHERE a.empno=b.empno)


و برای حذف:


DELETE FROM emp a WHERE rowid != (SELECT MAX(rowid) FROM emp b WHERE a.empno=b.empno);

10. جدولی با دو ردیف دانش آموز و نمرات وجود دارد، باید دانش آموزانی را بیابید که نمراتشان از متوسط نمره ها بیشتر باشد، مثلاً فهرست متوسط نمرات دانش آموزان قید شده.
این دستور را می توان با کمک دستور تابعی مثل زیر نوشت:


SELECT student, marks from table where marks > SELECT AVG(marks) from table)

نگاه دیگران

نگاه دیگران

نگاه دیگران نگاهی است از دنیای گسترده صفحات گوناگون اینترنت که منتخبی از آن‌ها را در پایگاه خبری چهره و اخبار مشاهده میکنید.


1 نظر درباره‌ی این پست نوشته شده است.

hamid

جمعه, 09 اسفند 1398

اجازه برای editکردن سلول ID نمیده دیتا تایپش هم intهست کلید پرایمری روش قرار گرفته.مابقی سلول ها رو که data type متفاوتی رو داره اجازه تایپ رو میده

پاسخ

ثبت نظر