วันพุธที่ 17 ธันวาคม พ.ศ. 2557

คำสั่ง SQL

1. SELECT Statement

ไวยากรณ์

ประโยคคำสั่ง SELECT
SELECT [ALL | DISTINCT] column1[,column2]
FROM table1[,table2]
[WHERE conditions ]
[GROUP BY column-list ]
[HAVING conditions ]
[ORDER BY column-list   [ASC | DESC] ];
[ ] ตัวเลือก

ตัวอย่าง

SELECT name, title, dept
FROM employee
WHERE title LIKE 'Pro%';
ประโยคคำสั่งข้างบนจะเลือก แถว/ค่า ในคอลัมน์ name, title และ dept จาก table “employee” ที่มี title เริ่มต้นด้วย ‘Pro’ ซึ่งจะส่งตำแหน่งงานของ Programmer หรือตำแหน่งอื่นที่ขึ้นต้นด้วย Pro ออกมา

2. GROUP BY

ไวยากรณ์

GROUP BY clause
SELECT column1, SUM(column2 )
FROM list-of-tables
GROUP BY column-list ;
GROUP BY clause ใช้หาผลรวมของคอลัมน์จากแถวในคอลัมน์ที่ระบุ และทำงานร่วมกับ aggregate function ที่ทำงานกับคอลัมน์ 1 คอลัมน์หรือมากกว่า เพื่อหาผลรวมของกลุ่มของแถวข้อมูล
SELECT max(salary), dept
FROM employee
GROUP BY dept;
ประโยคคำสั่งนี้จะเลือกค่า salary มากที่สุด ในแต่ละฝ่าย

ตัวอย่าง

การจัดกลุ่มภายในคอลัมน์ เช่น table ‘item_order’ มีคอลัมน์ quantity ที่เก็บค่า 1, 2, 3 และอื่นๆ โดยต้องการหาค่าราคาสูงสุดของละค่าใน quantity สามารถเขียนคำสั่งได้ดังนี้
SELECT quantity, max(price)
FROM items_ordered
GROUP BY quantity;

3. HAVING

ไวยากรณ์

HAVING clause
SELECT column1, SUM(column2 )
FROM list-of-tables
GROUP BY column-list
HAVING condition ;
HAVING clause ยินยอมให้ระบุเงื่อนไขบนแถวของแต่ละกลุ่ม หรือสามารถเลือกแถวตามเงื่อนไขที่ระบุ HAVING clause ควรตามหลัง GROUP BY clause

ตัวอย่าง

สมมติให้ table “employee” มีคอลัมน์เก็บข้อมูล ชื่อ (name), ฝ่าย (dept), เงินเดือน (salary) และ อายุ (age) ถ้าต้องการเลือกค่าเฉลี่ยเงินเดือนของพนักงานในแต่ละฝ่าย สามารถใช้คำสั่งนี้
SELECT dept, avg(salary)
FROM employee
GROUP BY dept;

4. ORDER BY

ไวยากรณ์

ORDER BY clause
SELECT column1, SUM(column2 )
FROM list-of-tables
ORDER BY olumn-list  [ASC | DESC];
[ ] ตัวเลือก
ORDER BY clause เป็น clause ตัวเลือกซึ่งยินยอมให้แสดงผลลัพธ์ของคิวรี่ที่เรียงลำดับ (ทั้งเรียงลำดับจากน้อยไปมาก หรือ จากมากไปน้อย) ตามคอลัมน์ที่ระบุให้เรียงลำดับ
ASC = Ascending order (เรียงลำดับจากน้อยไปมาก) - เป็นค่าเริ่มต้น
DESC = Descending order (เรียงลำดับจากมากไปน้อย)

ตัวอย่าง

SELECT employee_id, dept, name, age, salary
FROM employee
WHERE dept = 'Sales'
ORDER BY salary;
ประโยคคำสั่งนี้จะเลือก employee_id, dept, name, age และ salary จาก table “employee” ที่ค่า dept เท่ากับ ‘Sales’ และแสดงผลลัพธ์ในลำดับจากน้อยไปมากตาม salary
ถ้าต้องการเรียงลำดับแบบหลายคอลัมน์ ต้องแยกคอลัมน์ด้วยเครื่องหมายจุลภาค
SELECT employee_id, dept, name, age, salary
FROM employee
WHERE dept = 'Sales'
ORDER BY salary, age DESC;

5. การรวมเงื่อนไข และ Boolean Operator

AND OPERATOR

AND operator ใช้เชื่อม 2 เงื่อนไข หรือมากกว่าและแสดงผลลัพธ์เฉพาะที่สอดคล้องกับเงื่อนไขที่กำหนดทั้งหมด

ไวยากรณ์

AND operator
SELECT column1, SUM(column2 )
FROM list-of-tables
WHERE condition1  AND condition2 ;
AND สามารถใช้เชื่อมเงื่อนไขใน WHERE clause ตั้งแต่ 2 เงื่อนไขขึ้นไป โดยการแสดงแถวข้อมูลตามเงื่อนไขต้องเป็นจริงทุกค่า

ตัวอย่าง

SELECT employee_id, name, title, salary
FROM employee
WHERE salary >= 50000.00 AND title = 'Programmer';
ประโยคคำสั่งนี้แสดงข้อมูล employee_id, name, title และ salary จาก table “employee” ที่เงินเดือน (salary) มากกว่าหรือเท่ากับ 50,000 และ ตำแหน่ง (title) เท่ากับ Programmer’ ซึ่งข้อมูลสามารถแสดงออกมา เมื่อเงื่อนไขทั้งสองเป็นจริง ถ้าเงื่อนไขใดเงื่อนไขหนึ่งเป็นจริงจะไม่แสดงออกมา

ที่มา:http://www.widebase.net/database/sql/sqlquery/sqlquery11.shtml


คำสั่ง SQL(part2)

6. IN และ BETWEEN

IN

ไวยากรณ์

IN conditional operator
SELECT column1, SUM(column2 )
FROM list-of-tables
WHERE column3  IN (list-of-values );
IN เป็น operator ที่ใช้ทดสอบข้อมูลกับชุดของสมาชิก โดยทดสอบว่าค่าในคอลัมน์ (ที่ระบุก่อนคีย์เวิร์ด IN) อยู่ในรายการของค่าที่กำหนดให้หลังคีย์เวิร์ด IN

ตัวอย่าง

SELECT employee_id, name, salary
FROM employee
WHERE name IN ('Somchai', 'Sompong', 'Wanchai', 'Pornchai');
ประโยคคำสั่งนี้แสดงข้อมูล employee_id, name และ salary จาก table “employee” เฉพาะชื่อ (name) เป็นชื่อใดชื่อหนึ่งของ 'Somchai', 'Sompong', 'Wanchai', 'Pornchai' ผลลัพธ์แสดงแถวข้อมูลจากการส่งออกค่าใดค่าหนึ่งในค่าเหล่านี้
IN สามารถเขียนในรูปของ OR ได้ดังนี้
SELECT employee_id, name, salary
FROM employee
WHERE (name = 'Somchai') OR (name = 'Sompong ') OR (name = ' Wanchai') OR (name = 'Pornchai');
NOT IN สามารถใช้ดึงข้อมูลที่ภายนอกค่าของ IN
SELECT employee_id, name, salary
FROM employee
WHERE name NOT IN ('Somchai', 'Sompong', 'Wanchai', 'Pornchai');

BETWEEN

ไวยากรณ์

BETWEEN conditional operator
SELECT column1, SUM(column2 )
FROM list-of-tables
WHERE column3  BETWEEN value1  AND value2 ;
BETWEEN ใช้ทอสอบค่า (ที่ระบุก่อนคีย์เวิร์ด BETWEEN) อยู่ภายในช่วงของค่า 2 ค่าที่ระบุหลังคีย์เวิร์ด BETWEEN

ตัวอย่าง

SELECT employee_id, age, name, salary
FROM employee
WHERE age BETWEEN 30 AND 40;
ประโยคคำสั่งนี้เลือก employee_id, age, name และ salary จาก table “employee” ที่ age อยู่ระหว่าง 30 ถึง 40
เขียนประโยคคำสั่งใหม่โดยไม่ใช่ BETWEEN
SELECT employee_id, age, name, salary
FROM employee
WHERE age >= 30 AND age <= 40;
NOT BETWEEN สามารถใช้ดึงข้อมูลที่ภายนอกค่าของ BETWEEN
SELECT employee_id, age, name, salary
FROM employee
WHERE age NOT BETWEEN 30 AND 40;

7. Function

ฟังก์ชันที่ทำงานกับข้อมูลของแต่ละแถว เป็นฟังก์ชันที่สามารถทำงานใช้ประโยชน์ได้ดี แต่ไม่อยู่ในมาตรฐาน ANSI SQL-92 ซึ่งฟังก์ชันเหล่านี้อาจจะมีให้หรือไม่มีให้ขึ้นระบบฐานข้อมูลที่ใช้ ฐานข้อมูลหลักส่วนใหญ่มีให้ใช้

ฟังก์ชัน STRING

LEFT(<string>,x)ส่งออกตัวอักษรซ้ายสุด x ตัวอักษรของข้อความ เช่น LEFT(‘America’,2) = Am
RIGHT(<string>,x)ส่งออกตัวอักษรขวาสุด x ตัวอักษรของข้อความ เช่น RIGHT(‘America’,2) = ca
UPPER(<string>)แปลงข้อความทั้งหมดให้เป็นตัวอักษรใหญ่ เช่น UPPER(‘america’) = AMERICA
LOWER(<string>)แปลงข้อความทั้งหมดให้เป็นตัวอักษรเล็ก เช่น LOWER(‘AMERICA’)=america
INITCAP(<string>)แปลงข้อความทั้งหมดให้ขึ้นต้นด้วยอักษรตัวใหญ่ เช่น INITCAP(‘america’) = America
LENGTH(<string>)ส่งออกตัวอักษรในข้อความ เช่น LENGTH (‘America’) = 7
<string>||<string>ต่อ 2 ข้อความเป็นข้อความเดียวกัน (concatenated)
SUBSTR(<string>,x,y)ดึงตัวอักษรตั้งแต่ตำแหน่งที่ x จำนวน y ตัวอักษร เช่น SUBSTR(‘ABCDEF’, 3,3) = CDE
NVL(<column>, <value>)ฟังก์ชันที่ใช้เปลี่ยนค่า Null ในคอลัมน์ column ที่ระบุเป็นค่าใหม่ตาม value เช่น NVL(salary,0) หมายถึง ค่าที่เป็น Null ในคอลัมน์ salary ให้เปลี่ยนเป็น ศูนย์

ฟังก์ชันคณิตศาสตร์

ABS(x)ส่งออกค่าสัมบูรณ์ของ x
SIGN(x)ส่งออกค่าเครื่องหมายของ x เป็น -1, 0, or 1 (ค่าลบ, ศูนย์ หรือค่าบวก)
MOD(x,y)modulo - ส่งออกค่าจำนวนเต็มของการหาร x ด้วย y (เหมือนกับ x%y)
FLOOR(x)ส่งออกค่าจำนวนเต็มใหญ่ที่สุดที่น้อยกว่าหรือเท่ากับ x
CEILING(x) or CEIL(x)ส่งออกค่าจำนวนเต็มเล็กที่สุดที่มากกว่าหรือเท่ากับ x
POWER(x,y)ส่งออกค่าของ x ยกกำลัง y
ROUND(x)ส่งออกค่าที่ปรับเป็นจำนวนเต็มที่ใกล้ที่สุดของ x
ROUND(x,d)ส่งออกค่าที่ปรับตามจำนวนตำแหน่งทศนิยมที่ระบุด้วยค่า d
SQRT(x)ส่งออกค่ารากที่ 2 ของ x



ตัวอย่าง

SELECT round(salary), name
FROM employee;
ประโยคคำสั่งนี้ปรับค่า salary ให้เป็นจำนวนเต็มที่ใกล้ที่สุด และ name จาก table “employee”

8. Aggregate Function

Aggregate function ในคำสั่ง SQL ได้แก่
MINส่งออกค่าน้อยที่สุดของคอลัมน์ที่กำหนด
MAXส่งออกค่ามากที่สุดของคอลัมน์ที่กำหนด
SUMส่งออกผลรวมค่าตัวเลขของคอลัมน์ที่กำหนด
AVGส่งออกค่าเฉลี่ยของคอลัมน์ที่กำหนด
COUNTส่งออกผลรวมจำนวนของค่าของคอลัมน์ที่กำหนด
COUNT(*)ส่งออกจำนวนแถวใน table
aggregate function ใช้คำนวณเทียบกับการส่งออกคอลัมน์ของข้อมูลตัวเลขจากประโยคคำสั่ง SELECT ฟังก์ชันกลุ่มนี้ใช้หาผลรวมพื้นฐานของคอลัมน์ที่เจาะจงจากข้อมูลที่เลือกมา การทำงานของฟังก์ชันต้องใช้ GROUP BY clause เพื่อครอบคลุมการทำงาน แต่ฟังก์ชันสามารถใช้ได้โดยไม่มี GROUP BY clause

ตัวอย่าง

SELECT AVG(salary)
FROM employee;
ประโยคคำสั่งจะส่งออกผลลัพธ์ที่เก็บค่าเฉลี่ยของทุกข้อมูลที่ส่งออกมาในคอลัมน์ salary จาก table “employee”

9. JOIN

ไวยากรณ์

SELECT list-of-columns
FROM table1,table2,..
WHERE search-condition1 = search-condition2, ..
สมมติว่า ในการเก็บข้อมูลการซื้อสินค้า ประกอบด้วย 3 table คือ
1. customer_info เก็บรายละเอียดของลูกค้า
2. purchase_order เก็บรายละเอียดรายการสั่งซื้อ
”customer_info”
customer_numberfirstnamelastnameaddresscityprovincezip
”purchases”
customer_numberbuydateitemquantityprice

KEY

ในการเชื่อม table ของ SQL มีส่วนสำคัญที่เกี่ยวข้อง คือ Key ซึ่งมีแนวคิด ดังนี้
primary key เป็นคอลัมน์หรือชุดของคอลัมน์ที่ระบุแบบไม่ซ้ำ ตัวอย่างเช่น table “customer_info” มีคอลัมน์ customer_number เป็นคอลัมน์ที่ระบุแบบไม่ซ้ำของ ซึ่งมีความหมาย 2 อย่าง คือ ประการแรก ไม่มีข้อมูล 2 แถวสามารถมี customer_number เดียวกัน ถึงแม้ว่า 2 customer_number มีชื่อแรกและชื่อหลังเหมือนกัน ประการที่ 2 คอลัมน์ customer_number ทำให้มั่นใจว่าลูกค้า 2 รายนี้ไม่มีความสับสนต่อกัน เพราะการค้นหาข้อมูลใช้คอลัมน์ customer_number แทนการใช้ชื่อ
foreign key เป็นคอลัมน์ใน table ที่ primary key อยู่ table อื่น ซึ่งหมายความว่า ข้อมูลในคอลัมน์ foreign key ต้องตรงกับข้อมูลของ primary key ใน table อื่น ใน RDBMS ข้อมูลที่ตรงกัน รู้จักในฐานะ Reference Integrity ตัวอย่างเช่น table “purchases” มีคอลัมน์ customer_number เป็น foreign key โดยมี primary key อยู่ใน table “customer_info”
JOIN ที่กล่าวถึงนี้ เป็น INNER JOIN ซึ่งเป็นประเภทการเชื่อมปกติ

ตัวอย่าง

SELECT employee.employee_id, employee.lastname, employee_sales.comission
FROM employee, employee_sales
WHERE employee.employeeid = employee_sales.employeeid;
ประโยคคำสั่งนี้เลือก employee_id และ lastname จาก table “employee” และ comission จาก table “employee_sales” สำหรับทุกแถวที่ employee_id ใน table “employee” ตรงกับ employee_id ใน table “employee_sales”

10. Sub Query และ UNION

SUB QUERIES

คิวรี่ย่อย (sub queries) หมายถึง การสร้างประโยคคำสั่ง SELECT ภายในอีก ประโยคคำสั่ง SELECT หนึ่ง ซึ่งมักจะใช้ใน WHERE clause เช่น การเลือกลูกค้าที่ซื้อสินค้าแพงกว่าค่าเฉลี่ย 100
SELECT customer_number
FROM purchases
WHERE price >(SELECT avg(price) + 100 FROM purchases);
คิวรี่ย่อยคำนวณค่าเฉลี่ยของ price แล้วบวก 100 และใช้เป็นค่าอ้างอิง โดยการแสดง customer_number ที่มีค่า price มากกว่าค่าคำนวณจากคิวรี่ย่อย

UNION

UNION เป็นการนำหลายคิวรี่ ให้มาแสดงผลเป็นคิวรี่เดียวที่ใช้คอลัมน์ร่วมกัน
SELECT list-of-column FROM table1
UNION
SELECT list-of-column FROM table2
. . .
UNION
SELECT list-of-column FROM tablen
[ORDER BY columnname];


ตัวอย่าง

SELECT name, phone FROM employee
UNION SELECT lastname, phone FROM customer_info;
ประโยคคำสั่งนี้เลือก name, phone จาก table “employyee” และ lastname, phone จาก table “customer_info” เพื่อแสดงผลคอลัมน์ name เป็นรายชื่อของพนักงานและลูกค้า ส่วนคอลัมน์ phone แสดงหมายเลขโทรศัพท์ของพนักงานและลูกค้า   

ที่มา : http://www.widebase.net/database/sql/sqlquery/sqlquery11.shtml

ข้อสอบ O-NET วิชาคอมพิวเตอร์

1.ไฟล์ประเภทใดในข้อต่อไปนี้เก็บข้อมูลในลักษณะตัวอักษร.

1.  ไฟล์เพลง  MP 3 (mp 3)
2.  ไฟล์รูปประเภท  JPEG (jpeg)
3.  ไฟล์แสดงผลหน้าเว็บ (html)
4.  ไฟล์วีดีโอประเภท  Movie (movie)


2.ประเทศไทยได้นำคอมพิวเตอร์มาติดตั้งเมื่อไหร่
1. พ.ศ.2504                    2. พ.ศ.2505
3. พ.ศ.2506                   4. พ.ศ.2507

3.การส่งต่อข้อมูลในเครื่องคอมพิวเตอร์ปัจจุบันเป็นแบบใด
1. Digital                          2. laser
3. analog                          4. Modem

4.ลิขสิทธิ์โปรแกรมประเภทรหัสเปิด(Open Source)อนุญาติให้ผู้ใช้ทำอะไรได้บ้าง.
ก.  นำโปรแกรมมาใช้งานโดยไม่ต้องเสียค่าลิขสิทธิ์
ข.  ทดลองใช้โปรแกรมก่อนถ้าพอใจจึงจ่ายค่าลิขสิทธิ์
ค.  แก้ไขปรับปรุงโปรแกรมเองได้
1.  ข้อ  ก กับ  ข้อ        2.  ข้อ    กับ  ข้อ  
3.  ข้อ    อย่างเดียว    4
  ข้อ    อย่างเดียว

5.ผู้ประกอบอาชีพเป็นผู้พัฒนาเว็บไซต์ต้องเชี่ยวชาญความรู้ด้านใดบ้างจากตัวเลือกต่อไปนี้.ก.  ฮาร์แวร์คอมพิวเตอร์       ข.  ระบบปฎิบัติการ
ค.  เว็บเซิร์ฟเวอร์                   ง.  HTML
จ.  ระบบฐานข้อมูล                ฉ.  ภาษาจาวา(Java)
1.  ข้อ  ก และ ค                    2.  ข้อ    และ  
3.  ข้อ    และ                     4.  ข้อ    และ  


6.ข้อใดเป็นเทคโนโลยีการเชื่อมต่อข้อมูลไร้สายทั้งหมด.
1.  Wi-Fi  ,  IP              2.  Wi-Fi  ,Bluetooth
3.  3G  ADSL                4.  3G    Ethernet



7.หน่วยความจำที่ผู้ใช่สามารถบันทึก แก้ไขได้
1. TERMINAL                     2. ROM
3.  RAM                                  4. BIT

8.ข้อใดไม่ใช่ข้อเสียของการละเมิดลิขสิทธิ์ซอฟต์แวร์.1.  การทำผิดกฏหมายลิขสิทธิ์มีความผิดทางอาญา
2.  เป็นช่องทางหนึ่งในการระบาดของไวรัสคอมพิวเตอร์
3.  ผู้ใช้จะไม่ได้รับการบริการจากผู้พัมนาถ้าหากมีปัญหาการใช้งาน
4.  ทำให้ผู้พัมนาซอฟแวร์ไม่มีรายได้เพื่อประกอบการและพัฒนาต่อไปได้


9.ข้อใดต่อไปนี้ถูกต้องที่สุด.1.  การบันทึกข้อมูลลงแผ่นดีวีดีใช้เทคโนโลยีแบบแม่เหล็ก
2.  หมายเลขไอพีเป็นหมายเลขที่ใช้กำกับ  Network Interce Card
3.  หน่วยความจำสำรองเป็นหน่วยความจำที่มีคุณลักษณะแบบ Volntile
4.  รหัส ACIIและEBCIDICเป็นการวางรหัสตัวอักษรที่ใช้ขนาด  8 บิด


10.ข้อใดไม่ใช่ลักษณะของหน่วยความจำ
1. ROM                                       2.  RAM
3.  PROMPT                               4. EPROM

ที่มา : http://www.unigang.com/Article/1564

ฟังก์ชัน PHP

ฟังก์ชัน (Functions) คือ กลุ่มหรือชุดของคำสั่งที่สร้างขึ้นเพื่อทำหน้าที่หนึ่งๆ เมื่อต้องการใช้งาน

ก็เพียงเรียกชื่อฟังก์ชันนั้นก็สามารถใช้งานได้ทันที ฟังก์ชันใน PHP สามารถแบ่งได้เป็น 2 ชนิด คือ 
1) ฟังก์ชันมาตรฐาน (Built-in Functions) และ 2) ฟังก์ชันที่ผู้ใช้งานเป็นผู้สร้างเอง (User Defined Functions) มีรายละเอียด ดังนี้

  • ฟังก์ชันมาตรฐาน (Built-in Functions)

ฟังก์ชันมาตรฐาน คือ ฟังก์ชันที่มาพร้อมกับ PHP สามารถเรียกใช้งานได้ทันทีฟังก์ชันมาตรฐานมี
หลายกลุ่มการทำงาน สามารถจำแนกตามหน้าที่ ดังนี้

  1.  ฟังก์ชันที่เกี่ยวกับวันที่และเวลา
  2.  ฟังก์ชันที่เกี่ยวกับการค านวณทางคณิตศาสตร์
  3. ฟังก์ชันที่เกี่ยวกับการติดต่อกับฐานข้อมูล
  4. ฟังก์ชันที่เกี่ยวกับการจัดการกับกับสตริงหรือข้อความ

การเรียกใช้งานฟังก์ชันมาตรฐานของ PHP

ในการเรียกใช้งานฟังก์ชันจะต้องตรวจสอบก่อนว่าฟังก์ชันนั้นๆ เป็นฟังก์ชันเพื่อทำหน้าที่อะไร มี
การรับส่งค่าตัวแปรระหว่างฟังก์ชันหรือไม่ ถ้าไม่มีการรับส่งค่าระหว่างฟังก์ชัน ก็สามารถเรียกใช้งานได้
เลย แต่ถ้ามีการรับส่งค่าระหว่างฟังก์ชัน ก็จะต้องมีการระบุค่าพารามิเตอร์ ให้ถูกต้องตามรูปแบบที่ฟังก์ชันกำหนด
   ตัวอย่าง รูปแบบฟังก์ชันที่ไม่มีการรับส่งค่าระหว่างฟังก์ชัน
 function_name ( );
   ตัวอย่าง รูปแบบฟังก์ชันที่มีการรับส่งค่าระหว่างฟังก์ชัน
 function_name ($value1, $value2);
   ตัวอย่าง  การเรียกใช้งานฟังก์ชันมาตรฐาน 
<?php 
             $today = date("d/m/Y");           // เรียกใช้งานฟังก์ชัน date(); พร้อมระบุค่าอากิวเมนต์
             echo $today;                            // แสดงผลลัพธ์ เป็นวันที่ปัจจุบัน เช่น 6/7/2012 เป็นต้น 
?>
การสร้างฟังก์ชัน
ลักษณะของงานที่จะนำมาสร้างเป็นฟังก์ชันนั้น ควรเป็นงานหรือการกระทำอย่างใดอย่างหนึ่ง ที่
มักจะต้องทำซ้ำๆ และบ่อยครั้ง เพื่อให้ไม่ต้องเขียนคำสั่งหรือชุดคำสั่งนั้นๆ ทุกครั้งที่ต้องการทำงาน
แบบเดิม ซึ่งสามารถแยกคำสั่งบางส่วนออกมาสร้างเป็นฟังก์ชันไว้ต่างหากและนำมาทำเป็นฟังก์ชัน และ
เรียกใช้ตามลักษณะงานที่ต้องการ จะช่วยให้โค้ดคำสั่งของมีขนาดเล็กลง ช่วยลดการใช้ทรัพยากร และง่ายในการปรับปรุงแก้ไขในอนาคต เพราะสามารถแก้ไขเพียงครั้งเดียวก็จะมีผลทุกจุดที่เรียกใช้ฟังก์ชัน
รูปแบบ
<?php
              function ชื่อฟังก์ชัน (พารามิเตอร์)
             {
                          คำสั่ง;
             }
?>
** หมายเหตุ การตั้งชื่อฟังก์ชัน มีหลักเกณฑ์คล้ายกับการตั้งชื่อตัวแปร ดังนี้ 
- ต้องขึ้นต้นชื่อด้วย a-z หรือ _ เท่านั้น 
- ต้องประกอบด้วย a-z, 0-9 หรือ _ เท่านั้น 
- ต้องไม่ซ้ากับชื่อฟังก์ชันที่มีอยู่แล้วหรือฟังก์ชันมาตรฐานของ PHP 
พารามิเตอร์ คือ ตัวแปรหรือข้อมูลที่ต้องการรับจากภายนอกฟังก์ชันเข้ามาประมวลผลภายในฟังก์ชัน จะมีหรือไม่ก็ได้ ขึ้นอยู่กับว่าจาเป็นต้องใช้หรือไม่

ฟังก์ชัน PHP (part2)

  • ฟังก์ชันที่ผู้ใช้งานเป็นผู้สร้างเอง (User Defined Functions)

ฟังก์ชันที่ผู้ใช้งานเป็นผู้สร้างเอง คือ กลุ่มของคeสั่งที่ผู้ใช้เป็นผู้เขียนหรือพัฒนาขึ้นมาเอง เพื่อ
ทำงานหรือทำหน้าที่อย่างใดอย่างหนึ่งตามต้องการจากที่ได้กล่าวถึงในข้างต้น สรุปได้ว่า หลักๆ แล้วฟังก์ชันมีอยู่ด้วยกัน 2 ประเภท ทั้ง 2 ประเภท ก็จะมีฟังก์ชันที่ประกอบไปด้วย ฟังก์ชันที่ไม่มีการส่งค่าระหว่างฟังก์ชัน และฟังก์ชันที่มีการส่งค่าระหว่างฟังก์ชัน ค่าที่ใช้รับส่งระหว่างฟังก์ชัน จะเรียกว่า พารามิเตอร์ (parameter) หรือบ้างก็เรียกว่า อากิวเมนต์ (argument) 
การเรียกใช้ฟังก์ชันที่สร้างเอง
การเรียกใช้ฟังก์ชันที่สร้างเองสามารถทำได้เช่นเดียวกับการใช้ฟังก์ชันมาตรฐานของ PHP คือ ต้องระบุชื่อฟังก์ชันที่ต้องการใช้งานโดยระบุข้อมูลที่จะส่งให้กับฟังก์ชัน (ถ้ามี) ดังตัวอย่าง
  ตัวอย่าง การสร้างฟังก์ชัน 
<?php 
           function generateFooter ($msg)
           { 
                            printf ("<p><font color=red> %s <font></p>",$msg);
           } 
?>

  ตัวอย่าง  การเรียกใช้ฟังก์ชันที่สร้างเอง 
<?php 
               generateFooter ("Copyright 2012 Mr.Parinya Noidonprai"); 
?>


  • ฟังก์ชันแบบมีการส่งค่าพารามิเตอร์

พารามิเตอร์ คือ ข้อกำหนดในการรับข้อมูลของฟังก์ชัน โดยข้อมูลนั้นจะถูกนำไปใช้ประมวลผล
ภายในฟังก์ชัน พารามิเตอร์จะทำให้ฟังก์ชันมีความยืดหยุ่นต่อการใช้งาน เพราะผลลัพธ์จะแปรเปลี่ยนไป
ตามค่าพารามิเตอร์นั้น วิธีการกำหนดค่าพารามิเตอร์ มีดังนี้
          - พารามิเตอร์แบบกำหนดค่าเริ่มต้น (Default Parameter)
ในบางฟังก์ชันอาจใช้ค่าพารามิเตอร์ค่าใดค่าหนึ่งเป็นส่วนใหญ่ โดยอาจมีการเปลี่ยนไปใช้ค่าอื่น
บ้างในบางครั้ง ดังนั้นเพื่อความสะดวกจึงมีการกำหนดค่าพารามิเตอร์แบบกำหนดค่าเริ่มต้นขึ้น โดยจะ

กำหนดค่าพารามิเตอร์ที่ต้องใช้บ่อยๆ ไว้ล่วงหน้า หรือป้องกันปัญหาในกรณีที่ไม่ได้กหนดค่าพารามิเตอร์ให้กับฟังก์ชัน เมื่อมีการเรียกใช้ฟังก์ชันหากไม่มีการส่งค่าพารามิเตอร์มาให้ฟังก์ชัน ฟังก์ชันจะเรียกใช้ค่าเริ่มต้นที่กำหนดไว้ให้แทน รูปแบบการกำหนดพารามิเตอร์แบบกำหนดค่าเริ่มต้น มีรายละเอียด ดังนี
รูปแบบ
<?php
                function ชื่อฟังก์ชัน (ชื่อพารามิเตอร์ = ค่าเริ่มต้น) {
                           คำสั่ง;
                }

?>

ฟังก์ชัน PHP (part3)

  • พารามิเตอร์แบบส่งค่าและอ้างอิง (Passing Parameter by Value and Reference)

      ปกติแล้วค่าที่ถูกส่งไปยังฟังก์ชันจะเป็นแบบส่งค่า (by Value) คือ เมื่อมีการเปลี่ยนแปลงค่าของ
ตัวแปรภายในฟังก์ชันจะไม่ส่งต่อค่าตัวแปรตัวเดียวกันที่อยู่นอกฟังก์ชัน ทุกตัวอย่างก่อนหน้าในเรื่อง
ฟังก์ชันนี้ใช้วิธีการผ่านค่าพารามิเตอร์แบบส่งค่าทั้งหมด
       การส่งผ่านค่าแบบอ้างอิง (by Reference) นั้น หากในฟังก์ชันมีการเปลี่ยนแปลงค่าของตัวแปร
ภายในฟังก์ชันจะส่งผลให้ค่าของตัวแปรที่อ้างอิงกันนอกฟังก์ชัน ทำให้มีค่าเปลี่ยนตามไปด้วย การส่งผ่านค่าแบบอ้างอิงสามารถทำได้โดยการใส่เครื่องหมาย & ไว้หน้าพารามิเตอร์ตัวที่ต้องการอ้างอิง


  • การส่งค่ากลับจากฟังก์ชันด้วยคำสั่ง return

เนื่องจากฟังก์ชันจะใช้ในการประมวลผลอย่างใดอย่างหนึ่ง โดยฟังก์ชันมักจะถูกเรียกใช้โดยส่วน
ต่างๆ ของโปรแกรม เพื่อประมวลผลตามหน้าที่ต่างๆ ของฟังก์ชัน ในบางครั้งฟังก์ชันอาจจำเป็นต้องส่งค่าผลลัพธ์ของการทำงานกลับไปยังส่วนที่เรียกใช้ฟังก์ชันนั้นๆ หรือสามารถประยุกต์ใช้ส าหรับการตรวจสอบการทำงานของฟังก์ชัน เช่น ท างานปกติอาจส่งค่ากลับเป็นเลข 1 ท างานไม่ถูกต้องส่งค่ากลับเป็นเลข 2 หรืออื่นๆ ตามต้องการ เป็นต้น ส าหรับวิธีการส่งค่ากลับออกไปจะใช้ค าสั่ง return แล้วตามด้วยค่าที่ต้องการส่งออกไป 
   รูปแบบ

      return ค่าที่จะส่งกลับ;

วันพุธที่ 5 พฤศจิกายน พ.ศ. 2557

ระบบฐานข้อมูล




ระบบฐานข้อมูล คือ ระบบจัดเก็บข้อมูลด้วยคอมพิวเตอร์โดยมีวัตถุประสงค์เพื่อบำรุงรักษาข้อสนเทศ (Maintain information) และสามารถนำข้อสนเทศเหล่านั้นมาใช้ได้ทุกเมื่อที่ต้องการ
ระบบฐานข้อมูลประกอบส่วนประกอบหลัก4 ส่วนได้แก่
1. ข้อมูล (Data) ข้อมูลในฐานข้อมูลจะต้องมีคุณสมบัติ 2 ประการ คือ
  • เบ็ดเสร็จ (Integrate) ฐานข้อมูลเป็นแหล่งรวบรวมข้อมูลจากแฟ้มต่าง ๆ ไว้ครบถ้วนสมบูรณ์ เพื่อลดข้อมูลซ้ำซ้อนระหว่างแฟ้ม
  • ใช้ร่วมกันได้ (Share) ข้อมูลแต่ละชิ้นในฐานข้อมูลสามารถนำมาแบ่งใช้กันได้ระหว่างผู้ใช้ต่าง ๆ ในระบบ
2. ฮาร์ดแวร์ (Hardware) ประกอบด้วย อุปกรณ์บันทึกข้อมูลเช่น จานแม่เหล็ก , I/O device , Device controller , I/O channels , หน่วยประมวลผล และหน่วยความจำหลัก
3. ซอฟต์แวร์ (Sorftware) ตัวกลางเชื่อมระหว่างฐานข้อมูลและผู้ใช้คือ DBMS เป็นซอฟต์แวร์ที่สำคัญที่สุดของระบบฐานข้อมูล นอกจากนี้ยังมี Utility , Application Develoment tool , Desisn aids , Report writers , ect.
4. ผู้ใช้ (Users) มี 3 กลุ่มใหญ่ ๆ คือ
  • Application Programmer เขียนโปรแกรมประยุกต์
  • End Users ผู้ใช้ที่อยู่กับ Online terminal เข้าถึงข้อมูลโดยผ่านโปรแกรมประยุกต์ หรือผ่านภาษาเรียกค้น (Query Language)
  • Data Addministrator & Database Administrator
DA ผู้บริหารอาวุโส เป็นผู้ตัดสินใจว่าจะเก็บข้อมูลใดในฐานข้อมูลก่อน และกำหนดนโยบายการรักษาความปลอดภัยของข้อมูล
DBA ผู้เชี่ยวชาญระดับมืออาชีพ เป็นผู้สร้างฐานข้อมูลและนำมาใช้งานจริง โดยควบคุมทางด้านเทคนิคที่จำเป็นในการดำเนินนโยบายที่กำหนดโดย DA

ที่มา :  http://cptd.chandra.ac.th/%5Cselfstud%5Cdbsystem%5C%E0.html

ฟิลด์


        ฟิลด์ คือ กลุ่มของอักขระทีสัมพันธ์กัน ตั้งแต่ 1 ตัวขึ้นไปที่นำมารวมกันแล้วแสดงลักษณะหรือความหมายอย่างใดอย่างหนึ่ง ฟิลด์แต่ละฟิลด์ยังแยกออกเป็นประเภทข้อมูล ซึ่งจะบ่งบอกว่าในเขตฟิลด์นั้นบรรจุข้อมูลประเภทใดไว้ สามารถแยกประเภทของฟิลด์ได้เป็น 3 ประเภทคือ

          
          - ฟิลด์ตัวเลข (numeric field) ประกอบด้วย อักขระที่เป็นตัวเลข ซึ่งอาจเป็นเลขจำนวนเต็มหรือทศนิยมและอาจมีเครื่องหมายลบหรือบวก เช่น ยอดคงเหลือในบัญชีเป็นกลุ่มของตัวเลข
          
          - ฟิลด์ตัวอักษร (alphabetic field) ประกอบด้วย อักขระที่เป็นตัวอักษรหรือช่องว่าง (blank) เช่น ชื่อลูกค้าเป็นกลุ่มของตัวอักษร
         
          - ฟิลด์อักขระ (character field หรือ alphanumeric field) ประกอบด้วย อักขระซึ่งอาจจะเป็นตัวเลขหรือตัวอักษรก็ได้ เช่น ที่อยู่ของลูกค้า
       
          ข้อมูลที่ปรากฏอยู่ในฟิลด์ เป็นหน่วยย่อยของระเบียนที่บรรจุอยู่ในแฟ้มข้อมูล เช่น ฟิลด์เลขรหัสประจำตัวบุคลากร ฟิลด์เงินเดือนของลูกจ้าง หรือฟิลด์เลขหมายโทรศัพท์ของพนักงาน ตัวอย่าง เช็คของธนาคารแห่งหนึ่งประกอบด้วย ชื่อที่อยู่ธนาคาร เช็คเลขที่ จ่ายจำนวนเงินเป็นตัวเลข จำนวนเงินเป็นตัวอักษร สาขาเลขที่ เลขที่บัญชี และลายเซ็น
       
          ฟิลด์บางฟิลด์อาจจะประกอบด้วยข้อมูลหลาย ๆ ประเภทรวมกันในฟิลด์ เช่น ฟิลด์วันที่ประกอบด้วย 3 ฟิลด์ย่อย ๆ คือ วันที่ เดือน และปี หรือในฟิลด์ชื่อธนาคาร ยังประกอบด้วยหลายฟิลด์ย่อย ๆ คือ ชื่อธนาคาร ที่อยู่ เมือง ประเทศ และรหัสไปรษณีย์




ที่มา : http://www.sirikitdam.egat.com/WEB_MIS/103_116/04.html

วันพุธที่ 20 สิงหาคม พ.ศ. 2557

องค์ประกอบของเครือข่าย

องค์ประกอบของเครือข่าย ประกอบด้วย 
ฮาร์ดแวร์ (Hardware)
  • คอมพิวเตอร์ (Client Computer)
  • เซอร์เวอร์ (Server)
  • ฮับ (Hub)
  • บริดจ์ (Bridge)
  • เราท์เตอร์ (Router)
  • เกตเวย์ (Gateway)
  • โมเด็ม (Modem)
  • เน็ตเวอร์คการ์ด (Network Card)
ซอฟต์แวร์ (Software)
  • ระบบปฏิบัติการของระบบเครือข่าย (Network Operating Sytems)
  • แอบพลิเคชั่นของเครือข่าย (Network Application Sytems)
ตัวนำข้อมูล (Media Transmission)
             สายส่งข้อมูล หรือ Cable เป็นอุปกรณ์อย่างหนึ่งในระบบ Network ที่ใช้เป็นทางเดินของข้อมูลระหว่าง Workstation กับ Server มีลักษณะคล้ายสายไฟหรือสายโทรศัพท์แล้วแต่ชนิด ของ Cable แต่การเลือกใช้ Cable นั้นควรคำนึงถึงความปลอดภัย (Safety) และคลื่นรบกวน (Interference) เป็นสำคัญ สายส่งข้อมูลที่ดีไม่ควรเป็น ตัวนำไฟ เมื่อเกิดอัคคีภัยขึ้น และสามารถ ป้องกันคลื่นรบกวนจากอำนาจแม่เหล็ก และคลื่นวิทยุได้ ลักษณะของสายส่งข้อมูล แบ่งได้ดังนี้
             สาย Coaxial Cable หรือ สาย Coax นอกจากใช้ในระบบ Network แล้วยังสามารถ นำไปใช้กับระบบTV และ Mainframe ได้ด้วย สาย Coax นั้นเป็นสายที่ประกอบไปด้วยแกนของ ทองแดงหุ้มด้วยฉนวน และสายดิน (ลักษณะเป็นฝอย) หุ้มด้วยฉนวนบางอีกชั้นหนึ่ง ในปัจจุบันได้เปลี่ยนจากลวดทองแดงมาเป็นลวดเงินที่พันกันหลาย ๆ เส้นแทน ทั้งนี้เพื่อป้องกันการรบกวน ที่เรียกว่า "Cross Talk" ซึ่งเป็นการรบกวนที่เกิดจากสายสัญญาณข้างเคียง
  • สาย Twisted Pair Cable เป็นสายส่งสัญญาณที่ประกอบไปด้วยสายทองแดง 2 เส้น ขึ้นไปบิดกันเป็นเกลียว (Twist) แล้วหุ้มด้วยฉนวน โดยแบ่งเป็น 2 แบบคือ แบบมี Shield และ แบบไม่มี Shield จะมีฉนวนในการป้องกันสัญญาณรบกวน หรือระบบป้องกันสัญญาณรบกวน โดยเรียกสาย Cable ทั้งสองนี้ว่า "Shielded Twisted Pair (STP)" และ "Unshielded Twisted Pair (UTP)"
  • สาย Shielded Twisted Pair (STP) หรือที่เรียกว่า "สายคู่บิดเกลียวชนิดหุ้มฉนวน" เป็นสายคู่บิดเกลียวที่หุ้มด้วยฉนวนชั้นนอกที่หนาอีกชั้นหนึ่ง เพื่อป้องกันการรบกวนของคลื่น แม่เหล็กไฟฟ้า
             สาย Unshielded Twisted Pair (UTP) หรือที่เรียกว่า "สายคู่บิดเกลียว ชนิดไม่หุ้มฉนวน"
เป็นสายคู่บิดเกลียวที่หุ้มด้วยฉนวนชั้นนอกที่บางอีกชั้น ทำให้สะดวก ในการโค้งงอ สาย UTP เป็นสายที่มีราคาถูกและ หาง่าย แต่ป้องกันสัญญาณรบกวน ได้ไม่ดีเท่ากับสาย STP
             สาย Fiber Optic Cable เป็นสายใยแก้วนำแสงชนิดใหม่ ประกอบด้วยท่อใยแก้ว ที่มีขนาดเล็กและบางมากเรียกว่า "CORE"ล้อมรอบด้วยชั้นของใยแก้วที่เรียกว่า "CLADDING" อัตราการส่งถ่ายข้อมูลสูงถึง 565 เมกะบิตต่อวินาที หรือมากกว่า ป้องกันสัญญาณรบกวนได้ดีมาก ขนาดของสายเล็กมากและเบามากแต่มีราคาแพง
             นอกจากการสื่อสารข้อมูลตามสายรูปแบบต่าง ๆ แล้ว ยังมีการส่งข้อมูลแบบไร้สาย (Wireless Transmission) ซึ่งเป็นการส่งข้อมูลผ่านบรรยากาศโดยไม่ต้องอาศัยสายส่ง สัญญาณใด ๆ เช่น ระบบไมโครเวฟ ดาวเทียมสื่อสาร โทรศัพท์เคลื่อนที่ เป็นต้น ซึ่งเป็น สัญญาณแม่เหล็กไฟฟ้าที่มีความถี่แตกต่างกัน ทำให้การสื่อสาร ทำได้รวดเร็วและครอบคลุมทุกมุมโลก



ที่มา : http://www.dol.go.th/it/index.php?option=com_content&task=view&id=105

ความหมายของระบบเครือข่ายคอมพิวเตอร์

เครือข่ายคอมพิวเตอร์ (Computer Network) คือกลุ่มของคอมพิวเตอร์และอุปกรณ์คอมพิวเตอร์ที่ถูกนำมาเชื่อมต่อกันผ่านอุปกรณ์ด้านการสื่อสารหรือสื่ออื่นใด ทำให้ผู้ใช้ในระบบเครือข่ายสามารถติดต่อสื่อสารแลกเปลี่ยนและใช้ อุปกรณ์ต่าง ๆ ของเครือข่ายร่วมกันได้ 
             การที่เครือข่ายคอมพิวเตอร์มีบทบาท และความสำคัญเพิ่มขึ้นเพราะไมโครคอมพิวเตอร์ได้รับการใช้งาอย่างแพร่หลาย จึงเกิดความต้องการที่จะเชื่อมต่อคอมพิวเตอร์เหล่านั้นเข้าด้วยกัน เพื่อเพิ่มขีดความสามารถของระบบให้สูงขึ้นเพิ่มการใช้งานด้านต่าง ๆ และลดต้นทุนระบบโดยรวมลง เครือข่ายมีตั้งแต่ขนาดเล็กที่เชื่อมต่อกันด้วยคอมพิวเตอร์ เพียงสองสามเครื่องเพื่อใช้งานในบ้าน หรือในบริษัทเล็กๆ ไปจนถึงเครือข่ายระดับโลกที่ครอบคลุมไปเกือบทุกประเทศ เครือข่ายสามารถเชื่อมต่อคอมพิวเตอร์เป็นจำนวนมากทั่วโลกเข้าด้วยกันเราเรียกว่า เครือข่ายอินเทอร์เน็ต 

โครงสร้างของเครือข่ายคอมพิวเตอร์ 
1. เครือข่ายเฉพาะที่ (Local Area Network :LAN) 
2. เครือข่ายเมือง (Metropolitan Area Network :MAN) 
3. เครือข่ายบริเวณกว้าง ( Wide Area Network :WAN )
การต่อเชื่อมเครือข่ายคอมพิวเตอร์ระยะใกล้ 
             หากต้องการที่จะนำเอาเครื่องคอมพิวเตอร์ส่วนบุคคลมาต่อเป็นระบบ โดยใช้ขีดความสามารถเดิมที่มีอยู่ สามารถทำได้ด้วยวิธีการง่าย ๆ ดังนี้ 
             1. การเชื่อมต่อผ่านช่องทาง Com1, Com2 และ LPT เป็นวิธีที่นำคอมพิวเตอร์ที่มีอยู่ต่อผ่านช่องทาง COM1 หรือ COM2 เพื่อการเคลื่อนย้ายข้อมูลระหว่างกัน
             2. การเชื่อมต่อเข้ากับบัฟเฟอร์เครื่องพิมพ์ เป็นการแบ่งกันใช้เครื่องพิมพ์เพื่อให้การใช้ทรัพยากรเครื่องพิมพ์ (Printer) เกิดประโยชน์มากขึ้น 
             3. การเชื่อมต่อโดยใช้ระบบสลับสายข้อมูล เป็นวิธีการต่อขยายระบบแบบง่าย ๆ ที่ใช้มือช่วยระบบสลับสายข้อมูลทำหน้าที่เหมือนชุมสายโทรศัพท์
             4. การเชื่อมต่อผ่านระบบผู้ใช้หลายคนหลายช่องทาง ระบบผู้ใช้หลายคนขนาดเล็ก ที่อยู่บนไมโครคอมพิวเตอร์มีหลายระบบ เช่น ระบบยูนิกซ์ ระบบลีนุกซ์ ระบบดังกล่าวสามารถเชื่อมขยายเข้ากับสถานีย่อได้มาก เป็นระบบที่ใช้งานร่วมกันได้ในราคาประหยัด 

โครงสร้างระบบเครือข่ายคอมพิวเตอร์ (Network Topology) 
             เครือข่ายแบบบัส (Bus Network) เป็นเครือข่ายที่เชื่อมต่อคอมพิวเตอร์และอุปกรณ์ต่าง ๆ ด้วยสายเคเบิลยาวต่อเนื่องไปเรื่อย ๆ โดยจะมีคอนเน็กเตอร์เป็นตัวเชื่อมต่อคอมพิวเตอร์ และอุปกรณ์เข้ากับสายเคเบิล ในการส่งข้อมูลจะมีคอมพิวเตอร์เพียงตัวเดียวเท่านั้นที่สามารถส่งข้อมูลได้ในช่วงเวลาหนึ่งๆ 
             เครือข่ายแบบดาว (Star Network) เป็นเครือข่ายที่เชื่อมต่อคอมพิวเตอร์ เข้ากับอุปกรณ์ที่เป็นจุดศูนย์กลางของเครือข่ายโดยการนำสถานีต่าง ๆ มาต่อร่วมกันกับหน่วยสลับสายกลาง การติดต่อสื่อสารระหว่างสถานีจะกระทำได้ด้วยการติดต่อผ่านทางวงจรของหน่วยสลับสายกลาง การทำงานของหน่วยสลับสายกลาง จึงเป็นศูนย์กลางของการติดต่อ วงจรเชื่อมโยงระหว่างสถานี ต่าง ๆ ที่ต้องการติดต่อกัน 
             เครือข่ายแบบวงแหวน (Ring Network) เป็นเครือข่ายที่เชื่อมต่อ คอมพิวเตอร์ด้วยสายคเบิลยาวเส้นเดียวในลักษณะวงแหวน การรับส่งข้อมูลในเครือข่ายวงแหวน จะใช้ทิศทางเดียวเท่านั้น เมื่อคอมพิวเตอร์เครื่องหนึ่งส่งข้อมูลมันก็จะส่งไปยังคอมพิวเตอร์เครื่องถัดไป ถ้าข้อมูลที่รับมาไม่ตรงตามที่คอมพิวเตอร์เครื่องต้นทางระบุ ก็จะส่งผ่านไปยังคอมพิวเตอร์เครื่องถัดไปซึ่งจะเป็นขั้นตอน อย่างนี้ไปเรื่อย ๆ จนกว่าจะถึงคอมพิวเตอร์ปลายทางที่ถูกระบุตามที่อยู่จากเครื่องต้นทาง 
             เครือข่ายแบบต้นไม้ (Tree Network) เป็นเครือข่ายที่มีผสมผสานโครงสร้างเครือข่ายแบบต่างๆเข้าด้วยกันเป็นเครือข่ายขนาดใหญ่ การจัดส่งข้อมูลสามารถส่งไปถึงได้ทุกสถานี การสื่อสารข้อมูลจะผ่านตัวกลางไปยังสถานีอื่น ๆ ได้ทั้งหมด เพราะทุกสถานีจะอยู่บนทางเชื่อม รับส่งข้อมูลเดียวกัน 




ที่มา : http://www.dol.go.th/it/index.php?option=com_content&task=view&id=105