0 0 تومان
آموزش طراحی سایت (HTML CSS Javascript) | آتریا
آموزش سی شارپ
آموزش فتوشاپ
فونت فارسی

sql

مثال تابع AVG در SQL

مثال تابع AVG در SQL:

جدول Orders را در زیر داریم:

O_IdOrderDateOrderPriceCustomer
1 2008/11/12 1000 Hansen
2 2008/10/23 1600 Nilsen
3 2008/09/02 700 Hansen
4 2008/09/03 300 Hansen
5 2008/08/30 2000 Jensen
6 2008/10/04 100 Nilsen

می خواهیم میانگین فیلد OrderPrice را به دست آوریم.

از دستور زیر استفاده می کنیم:

SELECT AVG(OrderPrice) AS OrderAverage FROM Orders

نتیجه به شکل زیر خواهد بود:

OrderAverage
950

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

از دستور زیر استفاده می کنیم:

SELECT Customer FROM Orders
WHERE OrderPrice>(SELECT AVG(OrderPrice) FROM Orders)

نتیجه به شکل زیر خواهد بود:

Customer
Hansen
Nilsen
Jensen

آموزش های مرتبط

SQL Default

انواع داده ها در MySQL

انواع داده ها در MySQL

در MySQL سه نوع اصلی داده وجود دارد: نوع متنی، نوع عددی و نوع تارخ/زمان

داده های متنی

نوع دادهتوضیحات
CHAR(size)

رشته ای با طول ثابت (می تواند شامل حروف، اعداد و کاراکترهای خاص باشد)
طول رشته در پرانتر مشخص می شود و حداکثر 255 کاراکتر است

VARCHAR(size)

رشته ای با طول متغیر (می تواند شامل حروف، اعداد و کاراکترهای خاص باشد)

حداکثر طول رشته در پرانتز مشخص می شود و حداکثر 255 کاراکتر است

توجه: اگر رشته ای با طول بیش از 255 کاراکتر را در آن قرار دهید، به نوع TEXT تبدیل خواهد شد

TINYTEXT

رشته ای با طول حداکثر 255 کاراکتر

TEXT

رشته ای با طول حداکثر 65,535 کاراکتر

BLOB

داده باینتری با طول حداکثر 65,535 بایت (Binary Large OBject)

MEDIUMTEXT

رشته ای با طول حداکثر 16,777,215 کاراکتر

MEDIUMBLOB

داده باینتری با طول حداکثر 16,777,215 بایت (Binary Large OBject)

LONGTEXT

رشته ای با طول حداکثر 4,294,967,295 کاراکتر

LONGBLOB

داده باینتری با طول حداکثر 4,294,967,295 بایت (Binary Large OBject)

ENUM(x,y,z,etc.)

فقط یکی از مقادیری که در پرانتز لیست شده است، اجازه ورود دارد. می توانید حداکثر 65535 کاراکتر در ENUM لیست کنید

اگر مقداری که در لیست وجود ندارد، درج شود، یک blank یا فضای خالی بجای آن در نظر گرفته می شود
توجه: مقادیر به ترتیبی که شما وارد کرده اید، مرتب می شوند

SET

مانند ENUM است با این تفاوت که، حداکثر 64 آیتم می توانید لیست کنید و همچنین بیشتر از یک انتخاب دارید

داده های عددی 

نوع دادهتوضیحاتفضا
TINYINT(size)

محدوده اعداد مجاز به صورت علامت دار: 128- تا 127
محدوده اعداد مجاز به صورت بدون علامت: 0 تا 255

1 byte

SMALLINT(size)

محدوده اعداد مجاز به صورت علامت دار: 32768- تا 32767
محدوده اعداد مجاز به صورت بدون علامت: 0 تا 65535

2 byte

MEDIUMINT(size)

محدوده اعداد مجاز به صورت علامت دار: 8388608- تا 8388607
محدوده اعداد مجاز به صورت بدون علامت: 0 تا 16777215

3 byte

INT(size)

محدوده اعداد مجاز به صورت علامت دار: 2147483648- تا 2147483647
محدوده اعداد مجاز به صورت بدون علامت: 0 تا 4294967295

4 byte

BIGINT(size)

محدوده اعداد مجاز به صورت علامت دار: 9223372036854775808- تا 9223372036854775807
محدوده اعداد مجاز به صورت بدون علامت: 0 تا 18446744073709551615

8 byte 

FLOAT(size,d)

از این دو نوع داده برای ذخیره اعداد اعشاری با ممیز شناور استفاده می شود
پارامتر size حداکثر تعداد ارقام و پارمتر d حداکثر تعداد ارقام سمت راست ممیز اعشار را مشخص می کند
پارامتر size نشان دهنده 4 byteی یا 8 byteی بودن فیلد است. اگر بین ا تا 24 باشد، 4 byteی است و اگر بین 25 تا 53 باشد، 8 byteی است

4 یا 8 byte
DOUBLE(size,d)

از این دو نوع داده برای ذخیره اعداد اعشاری با ممیز شناور استفاده می شود

پارامتر size حداکثر تعداد ارقام و پارمتر d حداکثر تعداد ارقام سمت راست ممیز اعشار را مشخص می کند

8 byte

DECIMAL(size,d)

از این نوع داده برای نگهداری اعداد اعشاری با ممیز ثابت استفاده می شود. این نوع داده برای هر ۹ رقم ، ۴ بایت فضا اشغال می کند
پارامتر size حداکثر تعداد ارقام و پارمتر d حداکثر تعداد ارقام سمت راست ممیز اعشار را مشخص می کند

 

- اگر هنگام تعریف فیلد از کلمه کلیدی UNSIGNED استفاده کنیم میتوانیم مقادیر بدون علامت را درون فیلد بریزیم، ولی بطور پشفرض فیلد ها مقادیر علامت دار (SIGNED) را می پذیرند.

- میتوان تعداد ارقامی که به نوع دادهٔ Integer نسبت داده می شود را محدود نمود، به عنوان مثال: (INT(5 یعنی فیلدی از جنس INT  که 5 رقم را در خود جای می دهد.

- وقتی از کلمه کلیدی ZEROFILL استفاده می کنیم، اگر مقدار نسبت داده شده به فیلد از تعداد ارقام مشخص شده کمتر باشد، با اضافه کردن 0 به سمت چپ عدد، آن مقدار را هم اندازه تعداد ارقام مشخص شده می کند.

داده های تاریخ/زمان

نوع دادهتوضیحاتفضا
DATE()

این نوع داده برای نگهداری تاریخ (بدون ساعت)، با غالب 'YYYY-MM-DD' استفاده می شود
توجه:  محدوده تاریخی بصورت '01-01-1000' تا '31-12-9999' می باشد

3 byte

DATETIME()

این نوع داده برای نگهداری زمان (هم تاریخ و هم ساعت بصورت تفکیک شده و بدون توجه به منطقه زمانی)، با غالب 'YYYY-MM-DD HH:MM:SS' استفاده می شود
توجه: محدوده زمانی بصورت '00:00:00 01-01-1000' تا '23:59:59 31-12-9999' می باشد.

8 byte

TIMESTAMP()

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

به عبارت دیگر در این فیلد ۸ بایتی، تایم لحظه‌ای اجرای دستور نگهداری می‌شود و کاربرد آن کنترل بروزرسانی همزمان (Concurrency) اطلاعات توسط چند کاربر است. البته در تعداد رکوردهای پایین به کار نمی‌آید و بیشتر زمانی مورد نیاز است که تعداد رکوردها خیلی زیاد باشد مثلاً ۱۰۰ میلیون رکورد!

توجه: محدوده زمانی بصورت  '00:00:00 01-01-1000' UTC  تا '23:59:59 31-12-9999' UTC می باشد. یعنی هنگام ذخیره سازی زمان ، آن را از زمان محلی (Time Zone) سیستم به زمان UTC (گیرینویچ) تبدیل می کند و هنگام بازیابی ، آنرا از UTC به زمان محلی سیستم تبدیل می کند.

4 byte

TIME()

این نوع داده برای نگهداری زمان (فقط ساعت ، بدون تاریخ)، با غالب 'HH:MM:SS' یا 'HHH:MM:SS' استفاده می شود
توجه: محدوده ساعتی بصورت '838:59:59-' تا '838:59:59' می باشد. علت پذیرش مقدار منفی در این نوع داده این است که می توان از این نوع داده برای ذخیره اختلاف دو زمان استفاده کرد

3 byte

YEAR()

ذخیره سال به فرمت: دو رقمی یا چهار رقمی
توجه: مقادیر چهار رقمی: از 1901 تا 2155 و مقادیر دو رقمی: از 70 تا 69 که نماینده 1970 و 2069 است

1 byte


آموزش های مرتبط

SQL Data Types

آموزش صوتی SQL

ابزاری که در پیش روی دارید یکی از ابزارهای بسیار کاربردی سایت بیاموز در زمینه آموزش است، این ابزار برای سهولت یادگیری شما کاربران محترم طراحی شده است.

فقط کافی است روی عنوان پاراگراف مورد نظرتان کلیک کنید تا پخش صدا آغاز شود ...!