0

آموزش SQL

 
parisaexp
parisaexp
کاربر نقره ای
تاریخ عضویت : مهر 1392 
تعداد پست ها : 888
محل سکونت : اصفهان

پاسخ به:آموزش SQL

آموزش SQL-تابع Cast

تبدیل یک عبارت به نوعی دیگر

Wiki

برای تبدیل یک عبارت(expression) به انواع داده ها می توان یکی از توابع زیر را بکار برد:

  • ()cast
  • ()convert

تابع ()cast

 

Wiki

برای تبدیل یک عبارت به نوعی دیگر استفاده می شود.

نحوه استفاده:

CAST ( expression AS data_type [ ( length ) ] )
پارامتر توضیح
expression عبارتی که باید تبدیل شود.
data_type نوع داده ای که باید عبارت، به آن تبدیل شود.
[(length)]

اختیاری است، یک عدد صحیح برای مشخص کردن طول data typeهایی مثل char - varchar - nvarchar - varbinary (مقدار پیش فرض عدد 30 است.)

مثال: در مثال زیر دو متغییر از نوع varchar در یکدیگر ضرب شده اند:

DECLARE @StrSalary Varchar(10), @StrHours Varchar(6), @WeeklySalary Decimal(6,2)
SET @StrSalary = '22.18'; 
SET @StrHours = '38.50'; 
SET @WeeklySalary = CAST(@StrSalary As Decimal(6,2)) * CAST(@StrHours As Decimal(6,2)); 
SELECT @WeeklySalary;

خروجی کوئری بالا:

853.93

تابع ()convert

 

Wiki

این تابع نیز مانند تابع ()cast برای تبدیل یک عبارت استفاده می شود.

نحوه استفاده:

CONVERT ( data_type [ ( length ) ] , expression [ , style ] )
پارامتر توضیح
expression عبارتی که باید تبدیل شود.
data_type نوع داده ای که باید عبارت، به آن تبدیل شود.
[( length )]

اختیاری است، یک عدد صحیح برای مشخص کردن طول data typeهایی مثل char - varchar - nvarchar - varbinary (مقدار پیش فرض عدد 30 است.)

[style]

با یک عدد تنظیم می شود و چگونگی تبدیل عبارت را مشخص می کند.

مثال: در مثال زیر سه متغییر اعلان (Declare) شده است و بعد از انجام عملیات محاسباتی با دستور print آنها را چاپ می کنیم، توجه داشته باشید که در این دستور(print) برای چاپ متغییر های عددی باید حتماً آنها را به نوع رشته ای تبدیل کنیم:

DECLARE @Side As Decimal(10,3), @Perimeter As Decimal(10,3), @Area As Decimal(10,3); 
SET @Side = 48.126; 
SET @Perimeter = @Side * 4; 
SET @Area = @Side * @Side; 
PRINT 'Square Characteristics'; 
PRINT '-----------------------'; 
PRINT 'Side = ' + CONVERT(varchar(10), @Side, 10); 
PRINT 'Perimeter = ' + CONVERT(varchar(10), @Perimeter, 10); 
PRINT 'Area = ' + CONVERT(varchar(10), @Area, 10);

خروجی کوئری بالا:

Square Characteristics
-----------------------
Side = 48.126
Perimeter = 192.504
Area = 2316.112

 

لِکُلِّ شَیْ‏ءٍ زَکَاةٌ وَ زَکَاةُ الْعَقْلِ احْتِمَالُ الْجُهَّال‏

برای هر چیزی زکاتیست و زکات عقل تحمّل نادانان است.

دوشنبه 10 آذر 1393  10:36 PM
تشکرات از این پست
safasafa
parisaexp
parisaexp
کاربر نقره ای
تاریخ عضویت : مهر 1392 
تعداد پست ها : 888
محل سکونت : اصفهان

پاسخ به:آموزش SQL

خلاصه مطالب SQL

آموزش SQL-لیست دستورات

دستورات SQL نحوه استفاده
AND / OR SELECT column_name(s)
FROM table_name
WHERE condition
AND|OR condition
ALTER TABLE ALTER TABLE table_name 
ADD column_name datatype 
or 
ALTER TABLE table_name 
DROP COLUMN column_name
AS (alias) SELECT column_name AS column_alias
FROM table_name 
or
SELECT column_name
FROM table_name  AS table_alias
BETWEEN SELECT column_name(s)
FROM table_name
WHERE column_name
BETWEEN value1 AND value2
CREATE DATABASE CREATE DATABASE database_name
CREATE TABLE CREATE TABLE table_name
(
column_name1 data_type,
column_name2 data_type,
column_name2 data_type,
...
)
CREATE INDEX CREATE INDEX index_name
ON table_name (column_name) 
or 
CREATE UNIQUE INDEX index_name
ON table_name (column_name)
CREATE VIEW CREATE VIEW view_name AS
SELECT column_name(s)
FROM table_name
WHERE condition
DELETE DELETE FROM table_name
WHERE some_column=some_value 
or 
DELETE FROM table_name
DROP DATABASE DROP DATABASE database_name
DROP INDEX DROP INDEX table_name.index_name (SQL Server)
DROP INDEX index_name ON table_name (MS Access)
DROP INDEX index_name (DB2/Oracle)
ALTER TABLE table_name
DROP INDEX index_name (MySQL)
DROP TABLE DROP TABLE table_name
GROUP BY SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name
HAVING SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name
HAVING aggregate_function(column_name) operator value
IN SELECT column_name(s)
FROM table_name
WHERE column_name
IN (value1,value2,..)
INSERT INTO INSERT INTO table_name
VALUES (value1, value2, value3,....) or INSERT INTO table_name
(column1, column2, column3,...)
VALUES (value1, value2, value3,....)
INNER JOIN SELECT column_name(s)
FROM table_name1
INNER JOIN table_name2 
ON table_name1.column_name=table_name2.column_name
LEFT JOIN SELECT column_name(s)
FROM table_name1
LEFT JOIN table_name2 
ON table_name1.column_name=table_name2.column_name
RIGHT JOIN SELECT column_name(s)
FROM table_name1
RIGHT JOIN table_name2 
ON table_name1.column_name=table_name2.column_name
FULL JOIN SELECT column_name(s)
FROM table_name1
FULL JOIN table_name2 
ON table_name1.column_name=table_name2.column_name
LIKE SELECT column_name(s)
FROM table_name
WHERE column_name LIKE pattern
ORDER BY SELECT column_name(s)
FROM table_name
ORDER BY column_name [ASC|DESC]
SELECT SELECT column_name(s)
FROM table_name
SELECT * SELECT *
FROM table_name
SELECT DISTINCT SELECT DISTINCT column_name(s)
FROM table_name
SELECT INTO SELECT *
INTO new_table_name [IN externaldatabase]
FROM old_table_name or SELECT column_name(s)
INTO new_table_name [IN externaldatabase]
FROM old_table_name
SELECT TOP SELECT TOP number|percent column_name(s)
FROM table_name
TRUNCATE TABLE TRUNCATE TABLE table_name
UNION SELECT column_name(s) FROM table_name1
UNION
SELECT column_name(s) FROM table_name2
UNION ALL SELECT column_name(s) FROM table_name1
UNION ALL
SELECT column_name(s) FROM table_name2
UPDATE UPDATE table_name
SET column1=value, column2=value,...
WHERE some_column=some_value
WHERE SELECT column_name(s)
FROM table_name
WHERE column_name operator value

 

لِکُلِّ شَیْ‏ءٍ زَکَاةٌ وَ زَکَاةُ الْعَقْلِ احْتِمَالُ الْجُهَّال‏

برای هر چیزی زکاتیست و زکات عقل تحمّل نادانان است.

دوشنبه 10 آذر 1393  10:38 PM
تشکرات از این پست
parisaexp
parisaexp
کاربر نقره ای
تاریخ عضویت : مهر 1392 
تعداد پست ها : 888
محل سکونت : اصفهان

پاسخ به:آموزش SQL

آموزش SQL-میزبانی SQL

میزبانی SQL یا (SQL Hosting)

 

Wiki

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

اگر سرور وب شما توسط یک (ISP (Internet Service Provider میزبانی می شود، باید در پانل به دنبال برنامه های میزبان SQL باشید.

رایج ترین پایگاه داده های تحت وب MySQL, MS SQL Server و MS Access هستند.

در زیر مروری خواهیم داشت بر اینکه کدام پایگاه داده در چه سیستم عاملی اجرا می شود:

MS SQL Server: تنها در سیستم عامل ویندوز قابل اجراست.

MySQL: در هر دو سیستم عامل ویندوز و Linux/UNIX قابل اجراست.

MS Access: تنها در سیستم عامل ویندوز قابل اجراست. ( توصیه می شود تنها در شبکه های کوچک استفاده شود)

لِکُلِّ شَیْ‏ءٍ زَکَاةٌ وَ زَکَاةُ الْعَقْلِ احْتِمَالُ الْجُهَّال‏

برای هر چیزی زکاتیست و زکات عقل تحمّل نادانان است.

دوشنبه 10 آذر 1393  10:39 PM
تشکرات از این پست
parisaexp
parisaexp
کاربر نقره ای
تاریخ عضویت : مهر 1392 
تعداد پست ها : 888
محل سکونت : اصفهان

پاسخ به:آموزش SQL

آموزش SQL-خلاصه مباحث

خلاصه مباحث SQL

 

Wiki

در این خودآموز با زبان استاندارد SQL جهت دسترسی و دستکاری داده ها آشنا شدید.

شما اکنون می دانید که چگونه در یک پایگاه داده به وسیله SQL یک query را اجرا کنید، داده ها را بازیابی کنید، رکوردهای جدید را درج کنید، رکوردهایی را حذف کنید و یا تغییر دهید.

همچنین آموختید که چگونه پایگاه داده، جدول و indexها را در SQL ایجاد کنید و چگونه آنها را حذف کنید.

اکثر توابع مهم Aggregate و Scalar را در SQL یاد گرفتید.

حال می دانید که SQL یک زبان استاندارد است که با سیستم های معروف پایگاه داده نظیر MS SQL Server, IBM DB2, Oracle, MySQL و MS Access  کار می کند.


حال که SQL را آموختید قدم بعد چیست؟

توصیه ما این است که ADO یا PHP MySQL را بیاموزید.

اگر می خواهید مطالب بیشتری در مورد ADO بدانید سری به لینک ADO tutorial بزنید.

اگر می خواهید مطالب بیشتری در مورد MySQL در PHP بدانید سری به لینک PHP Home بزنید.

لِکُلِّ شَیْ‏ءٍ زَکَاةٌ وَ زَکَاةُ الْعَقْلِ احْتِمَالُ الْجُهَّال‏

برای هر چیزی زکاتیست و زکات عقل تحمّل نادانان است.

دوشنبه 10 آذر 1393  10:41 PM
تشکرات از این پست
safasafa
safasafa
کاربر تازه وارد
تاریخ عضویت : دی 1394 
تعداد پست ها : 2

پاسخ به:آموزش SQL

سلام و عرض ادب.

آموزش زبان sql بسیار مفید بود.سپاسگزارم.

شنبه 12 دی 1394  12:22 PM
تشکرات از این پست
parisaexp
safasafa
safasafa
کاربر تازه وارد
تاریخ عضویت : دی 1394 
تعداد پست ها : 2

پاسخ به:آموزش SQL

سلام و عرض ادب.

آموزش زبان sql بسیار مفید بود.سپاسگزارم.

شنبه 12 دی 1394  12:22 PM
تشکرات از این پست
parisaexp
دسترسی سریع به انجمن ها