sondmk header
SQL SERVER เบื้องต้น

SQL SERVER :: ADD FOREIGN KEY

Post by Goborijung at 2019-10-21 09:41:56 | ID: 159

แบบที่ 1
ALTER TABLE ชื่อตาราง
ADD FOREIGN KEY (ชื่อฟิวส์ที่จะทำเป็น FK) REFERENCES ชื่อตารางต้นทาง(ชื่อฟิวส์);

แบบที่ 2
ALTER TABLE table_name
ADD CONSTRAINT fk_column_name
FOREIGN KEY (column_name) REFERENCES source_table_name(column_name)

Ex.
ALTER TABLE Test
ADD CONSTRAINT fk_Product_ID
FOREIGN KEY (Product_Code) REFERENCES Product(OID)

SQL SERVER :: ADD PRIMARY KEY

Post by Goborijung at 2019-12-06 11:38:49 | ID: 217

จะสามารถเพิ่ม Primary Key ได้ 2 แบบดังนี้

ALTER TABLE table_name ADD PRIMARY KEY (column_name);
หรือ
ALTER TABLE table_name ADD CONSTRAINT pk_column_name PRIMARY KEY (column_name);

Ex.
ALTER TABLE test ADD PRIMARY KEY (OID);
หรือ
ALTER TABLE test ADD CONSTRAINT pk_OID PRIMARY KEY (OID);

แบบที่ 1 จะเป็นการ Add โดย Generate CONSTRAINT Name ให้เอง
แบบที่ 2 จะเป็นการกำหนด CONSTRAINT Name เอง

SQL SERVER :: Aggregate Function (ฟังก์ชั่นที่ใช้ในการคำนวนหาผลรวมของคอลัมน์ที่ต้องการ)

Post by Goborijung at 2019-12-10 14:13:31 | ID: 268

Aggregate Function
เป็นฟังก์ชั่นที่ใช้ในการคำนวนหาผลรวมของคอลัมน์ที่ต้องการ โดยผลลัพธ์ที่ได้ จะอยู่ในรูปของยอดสรุป 
เช่น การหาผลรวม, การหาราคาเฉลี่ยของสินค้า เป็นต้น มีดังนี้

AGV หาค่าเฉลี่ยในกลุ่มข้อมูล
COUNT นับจำนวนแถวของกลุ่มข้อมูล
MAX หาค่าสูงสุดของกลุ่มข้อมูล
MIN หาค่าต่ำสุดของกลุ่มข้อมูล
SUM หาผลรวมของกลุ่มข้อมูล
STDEV หาค่าส่วนเบี่ยงเบนมาตรฐาน
STDEVP หาค่าส่วนเบี่ยงเบนมาตรฐานนิยม
VAR หาค่าความแปรปรวน
VARP หาค่าความแปรปรวนนิยม

AGV หาค่าเฉลี่ยในกลุ่มข้อมูล
Ex.
SELECT CONo ,AVG(ORDQTYPCS) AS agv_ordqty
FROM TM_SO
GROUP BY CONo
ORDER BY CONo

COUNT นับจำนวนแถวของกลุ่มข้อมูล
Ex.
SELECT CONo ,COUNT(ORDQTYPCS) AS count_ordqty
FROM TM_SO
GROUP BY CONo
ORDER BY CONo

Ex.
SELECT CONo ,COUNT(DISTINCT ORDQTYPCS) AS count_ordqty
FROM TM_SO
GROUP BY CONo
ORDER BY CONo


MAX หาค่าสูงสุดของกลุ่มข้อมูล
Ex.
SELECT CONo ,MAX(ORDQTYPCS) AS max_ordqty
FROM TM_SO
GROUP BY CONo
ORDER BY CONo

MIN หาค่าต่ำสุดของกลุ่มข้อมูล
Ex.
SELECT CONo ,MIN(ORDQTYPCS) AS min_ordqty
FROM TM_SO
GROUP BY CONo
ORDER BY CONo

SUM หาผลรวมของกลุ่มข้อมูล
Ex.
SELECT CONo ,SUM(ORDQTYPCS) AS sum_ordqty
FROM TM_SO
GROUP BY CONo
ORDER BY CONo

STDEV หาค่าส่วนเบี่ยงเบนมาตรฐาน
Ex.
SELECT CONo ,STDEV(ORDQTYPCS) AS stdev_ordqty
FROM TM_SO
GROUP BY CONo
ORDER BY CONo

STDEVP หาค่าส่วนเบี่ยงเบนมาตรฐานนิยม
Ex.
SELECT CONo ,STDEVP(ORDQTYPCS) AS stdevp_ordqty
FROM TM_SO
GROUP BY CONo
ORDER BY CONo

VAR หาค่าความแปรปรวน
SELECT CONo ,VAR(ORDQTYPCS) AS var_ordqty
FROM TM_SO
GROUP BY CONo
ORDER BY CONo

VARP หาค่าความแปรปรวนนิยม
SELECT CONo ,VARP(ORDQTYPCS) AS varp_ordqty
FROM TM_SO
GROUP BY CONo
ORDER BY CONo

SQL SERVER :: AGV Function หาค่าเฉลี่ยในกลุ่มข้อมูล

Post by Goborijung at 2019-12-10 14:14:48 | ID: 269

AGV หาค่าเฉลี่ยในกลุ่มข้อมูล
Ex.
SELECT CONo ,AVG(ORDQTYPCS) AS agv_ordqty
FROM TM_SO
GROUP BY CONo
ORDER BY CONo

SQL SERVER :: ALTER COLUMN

Post by Goborijung at 2019-12-06 09:59:41 | ID: 212

ALTER TABLE table_name ALTER COLUMN column_name data_type

Ex.
ALTER TABLE test ALTER COLUMN name nvarchar(100)

SQL SERVER :: Batch and Script (การเขียน Batch และ Script ในฐานข้อมูล)

Post by Goborijung at 2019-12-12 14:54:58 | ID: 312

/* Create Batch and Script */
/*
Batch 1 Batch จะสิ้นสุดด้วยคำสั่ง GO
Script เกิดจาก การรวมหลายๆ Batch เข้าด้วยกัน
*/

IF NOT EXISTS (SELECT * FROM sys.databases WHERE name = 'kk_test' )
BEGIN
	CREATE DATABASE kk_test
	PRINT 'Create database "kk_test" success.'
END
GO

USE kk_test
GO

IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID('[dbo].[kk_customer]') AND type IN ('U'))
BEGIN
	CREATE TABLE kk_customer
	(
	cus_no varchar(10) NOT NULL PRIMARY KEY,
	cust_name varchar(100) NOT NULL,
	cust_phone varchar(20)
	)
	PRINT 'Created table "kk_customer" success.'
END
GO

IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID('[dbo].[kk_product]') AND type IN ('U'))
BEGIN
	CREATE TABLE kk_product
	(
	product_code varchar(10) NOT NULL PRIMARY KEY,
	product_name varchar(100) NOT NULL,
	producy_type varchar(20)
	)
	PRINT 'Created table "kk_product" success.'
END
GO

/*
ตัวอย่างการ Run คำสั่งด้วย SQLCMD
sqlcmd -S S410717NB0201MSSQLSERVER2 -U sa -P gik8nv@tpf -i"d:TestScript.sql"
*/

SQL SERVER :: CELLING(numeric_expr) Function ปัดเศษขึ้นเป็นเลขจำนวนเต็ม

Post by Goborijung at 2019-12-10 14:59:16 | ID: 279

CELLING(numeric_expr) ปัดเศษขึ้นเป็นเลขจำนวนเต็ม
Ex.
SELECT CELLING(1234.01) //Output : 1235

SQL SERVER :: Converting Data Type Functions (ฟังก์ชั่นสำหรับแปลงข้อมูลต่างชนิดกัน ให้อยู่ในรูปแบบที่ใช้งานด้วยกันได้)

Post by Goborijung at 2019-12-11 14:53:12 | ID: 305

ref : https://saixiii.com/database-sql-data-types/

Converting Data Type Functions
เป็นฟังก์ชั่นสำหรับแปลงข้อมูลต่างชนิดกัน ให้อยู่ในรูปแบบที่ใช้งานด้วยกันได้

Style ที่จำเป็นต้องใช้สำหรับข้อมูลประเภท Datetime เพื่อแปลงให้เป็น Character

/* แปลง int ให้เป็น varchar */
declare @age as int = 20
select CAST(@age as varchar(4))

/* แปลง Date ให้อยู่ในรูปแบบ Style ที่ต้องการ */
/* 103 dd/mm/yy
105 dd-mm-yy
108 hh:mm:ss
111 yy/mm/dd */

select getdate()
select convert(varchar(10),GETDATE(),103) AS cdate103

/* ตรวจสอบว่ารูปแบบนั้นเป็นวันที่หรือไม่ Y?1:0 */
select ISDATE('2000-11-11')
select ISDATE('1000-11-11')

/* ตรวจสอบว่ารูปแบบนั้นเป็นตัวเลขหรือไม่ Y?1:0 */
select ISNUMERIC('2533')
select ISNUMERIC('2533s')

SQL SERVER :: COUNT Function นับจำนวนแถว ของกลุ่มข้อมูล

Post by Goborijung at 2019-12-10 14:15:39 | ID: 270

COUNT นับจำนวนแถวของกลุ่มข้อมูล
Ex.
SELECT CONo ,COUNT(ORDQTYPCS) AS count_ordqty
FROM TM_SO
GROUP BY CONo
ORDER BY CONo

Ex.
SELECT CONo ,COUNT(DISTINCT ORDQTYPCS) AS count_ordqty
FROM TM_SO
GROUP BY CONo
ORDER BY CONo

SQL SERVER :: CREATE TABLE

Post by Goborijung at 2019-12-06 09:44:31 | ID: 211

การสร้างแบบปกติ

CREATE TABLE table_name ( OID int NOT NULL, Name nvarchar(50), Address nvarchar(100), Tel nvarchar(20) )

การสร้างแบบกำหนด Primary Key ด้วย

CREATE TABLE table_name ( OID int NOT NULL PRIMARY KEY, Name nvarchar(50), Address nvarchar(100), Tel nvarchar(20) )

การสร้างแบบกำหนด Foreign Key ด้วย

Create Table H_ORDER ( Order_no int default 0 not null Primary key, Cus_id char(5) default '' not null, Order_Date datetime default '2000-01-01' not null, Foreign key (Cus_id) References CUS_NAME(Cus_id) )

<<<...3456789101112...>>>

Framework

Library


เครื่องมือพัฒนาเว็บ



การออกแบบและพัฒนาเว็บไซต์


Download SourceCode



copyAllright © 2016 soundmk.com