เลือก Attribute ที่เหมือนกัน ใน QGIS

เลือก Attribute ที่เหมือนกันใน QGIS แบบเร็ว ๆ ทำอย่างไร?

เมื่อไม่กี่วันก่อน ได้พูดคุยกับผู้ร่วมงาน ซึ่งกำลังทำงานใน QGIS แล้วต้องค้นหาว่า ข้อมูลที่ดินซึ่งต้องการนั้นมีแปลงอื่นที่มีข้อมูลแบบเดียวกัน อยู่ตรงไหนบ้าง สมมติ จะดูว่าแปลงที่ดินนี้ มีข้อมูล St_Value เท่าไหร่ แล้วแปลงอื่น ๆ ที่มีข้อมูล ST_Value นี้เท่ากัน อยู่ตรงไหนบ้าง

อ่านเพิ่มเติม

Function Text

Function Text นี้อาจจะไม่ค่อยมีคนใช้เท่าไหร่ แต่เมื่อไม่นานวันที่ผ่านมา พบว่าการใช้ฟังก์ชัน TEXT นี้ก็ช่วยงานได้ระดับหนึ่งเหมือนกัน เวลาต้องการแสดงตัวเลขในรูปแบบที่อ่านได้ง่ายขึ้น โดยสามารถจัดรูปแบบอย่างที่ต้องการได้ แต่ต้องจำไว้ว่า มันจะกลายเป็น “ข้อความ” นั่นหมายถึงว่า จะใช้เพื่อแสดงผลเป็นหลัก ไม่ได้ใช่เพื่อการคำนวณ

ตอนแรกคิดว่าจะไม่เขียนถึงการใช้ฟังก์ชันนี้ พราะจะว่าไปแล้ว มันจัดรูปแบบแทบจะไม่ต่างจาก Custom Numbers Format ในเมื่อมันคล้ายกัน หันไปใช้ Numbers Formatไม่ดีกว่ารึ? เผื่อเอาไปใช้คำนวณต่อได้ด้วย สะดวกกว่า  แต่ไม่นานวันมานี้ เพิ่งเห็นว่ามันก็มีประโยชน์อยู่เหมือนกัน เวลาที่เราจะสรุปรายงานอะไรบางอย่างที่ต้องการให้ “อ่านง่าย” มันช่วยจัดรูปแบบได้สะดวกดีเหมือนกัน อย่างเช่น แสดงวันที่ในรูปแบบที่ต้องการ หรือการผสมข้อความเข้ากับตัวเลข

Function Text

ไวยากรณ์การเขียนฟังก์ชัน TEXT ง่าย ๆ คือ

=TEXT(ค่าที่ต้องการจัดรูปแบบ, “รูปแบบที่ต้องการ”)

ง่าย ๆ เท่านี้เอง

ยกตัวอย่างเช่น

=TEXT(A3,”#,###”)

ก็คือ จัดรูปแบบค่าใน A3 ให้อยู่ในรูปมีจุลภาคคั่นที่หลักพัน แบบนี้เป็นต้น

หรือ ที่น่าเอาไปใช้คือ การใช้กับวันที่ เช่น

=TEXT(B2,”วว ดดดด พ.ศ. ปปปป”)

ทีนี้มาดูว่าทำไมถึงต้องใช้ฟังก์ชัน Text คือมันมีอยู่ครั้งหนึ่งที่เราต้องผสมข้อความ สมมติว่า ข้อความอยู่ใน A1 (“แล้วเสร็จภายใจวันที่) กับวันที่อยู่ใน B1 แบบนี้เราไม่สามารถใช้สูตร A1& B1 ได้นะ เพราะถ้าใช้จะออกมาในลักษณะ “แล้วเสร็จภายใจวันที่481256” แบบนี้ เพราะค่าของวันที่เก็บไว้ในรูปแบบตัวเลขเรียงลำดับ

เราจึงใช้ Text เพื่อทำแบบนี้ อันนี้เป็นประโยชน์พอสมควร

สำหรับตัวอย่างการใช้งานก็มีดังนี้

เกี่ยวกับวันที่

To displayAsFormatFormulaResult
Months1–12“m”=TEXT(B3,”m”)5
Months01–12“mm”=TEXT(B3,”mm”)05
MonthsJan–Dec“mmm”=TEXT(B3,”mmm”)May
MonthsJanuary–December“mmmm”=TEXT(B3,”mmmm”)May
MonthsJ–D“mmmmm”=TEXT(B3,”mmmmm”)M
Days1–31“d”=TEXT(B3,”d”)12
Days01–31“dd”=TEXT(B3,”dd”)12
DaysSun–Sat“ddd”=TEXT(B3,”ddd”)Wed
DaysSunday–Saturday“dddd”=TEXT(B3,”dddd”)Wednesday
Years00–99“yy”=TEXT(B3,”yy”)21
Years1900–9999“yyyy”=TEXT(B3,”yyyy”)2021

เราจะได้การแสดงผลวันที่เป็นเลขไทย และเป็นปีพุทธศักราช (ลองดูการใช้สัญลักษณ์แทนวันปีเดือนที่เว็บนี้)

ผสมข้อความกับตัวเลข

เราสามารถแทนข้อความเข้าไปประกอบกับตัวเลขได้เหมือนกัน เช่น

Key ใน RDBMS

Key ใน RDBMS (Relational Database Management System) Key คือสิ่งที่จะใช้เชื่อมโยง Relation ทั้งหลาย มีสถานะเป็นตัวแทนของระเบียนนั้นโดยเฉพาะ และเป็นตัวช่วยระบุความสัมพันธ์ระหว่างตาราง อาจจะเป็นข้อมูลในคอลัมน์ใดคอลัมน์หนึ่ง หรือ หลายคอลัมน์ รวมกันก็ได้ เราจะเรียกคอลัมน์ที่ใช้เป็นตัวแทนนั้นว่า Key Column ส่วนคอลัมน์ที่ไม่ได้ใช้เป็นตัวแทน จะเรียกว่า Non-Key Column

อ่านเพิ่มเติม

บันทึกข้อมูลใน Excel

บันทึกข้อมูลใน Excel เป็นเรื่องที่หลายคนมองข้าม และบางคนอาจจะคิดว่าเรื่องแค่คีย์ข้อมูลลงไปโง่ ๆ แบบนี้มันต้องมีเทคนิคหรือว่ากฎเกณฑ์อะไรยุ่งยากด้วยหรือไร? เรื่องนี้เป็นปัญหาที่เจอมาตลอดในชีวิตการทำงาน คือต้องเจอการทำงานกับ excel ที่ไม่ได้มีการบันทึกข้อมูลที่ดี

อ่านเพิ่มเติม

ออกแบบตาราง

ออกแบบตาราง (Table) ใน Access เป็นเรื่องพื้นฐานที่ควรทำความเข้าใจให้ดี เนื่องจาก “ตาราง” เปรียบเสมือน “กระดูกสันหลัง” ของ Access ก็ว่าได้ เพราะเราเก็บข้อมูลทั้งหมดไว้ใน “ตาราง” ถ้าหากเราออกแบบตารางไม่ดี จะทำให้มีปัญหาตามมามากมายอย่างที่หลายคนคิดไม่ถึง

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

อ่านเพิ่มเติม

Beginner Guide to Access

Beginner Guide นี่เขียนขึ้นเพื่อแนะนำการใช้งานโปรแกรม Microsoft Access สำหรับผู้ที่ไม่รู้จักและไม่เคยใช้งานมาก่อน จุดเด่นของ Access คือ เป็นโปรแกรมที่ออกแบบมาเพื่อจัดการฐานข้อมูลเชิงสัมพันธ์ (Relation Database) ที่ทำงานได้อย่างสมบูรณ์ รองรับข้อมูลจาก database หลายแหล่ง สามารถ เรียกดู ปรับปรุง สืบค้น ผ่านตาราง (Table) แบบสอบถาม (Query) ฟอร์ม Form) และ รายงาน (Report) โดยมีตัวช่วยคือ มาโคร (Macro) และ โมดูล (Module)

อย่างไรก็ตาม ต้องทำความเข้าใจก่อนว่า ถึงแม้ MS Access จะทำออกมาเพื่อจัดการฐานข้อมูล แต่ก็ใช่ว่าจะครอบคลุมการทำงานในระบบใหญ่ คือ โดยศักยภาพของโปรแกรม รับมือกับองค์กรธุรกิจขนาดเล็กถึงขนาดกลางเท่านั้น ถ้าเป็นองค์กรขนาดใหญ่ยังมีระบบจัดการฐานข้อมูล ระบบ dbms เช่น MS SQL Server หรือ Oracle ที่สามารถปฎิบัติการฐานข้อมูลได้ดีกว่า อีกทั้งข้อมูลทั้งหมดจากฐานข้อมูลใน MS Access จะบันทึกลงในไฟล์เดียว ถ้ามีข้อมูลจำนวนมาก อาจทำงานช้าลง และไม่ได้รองรับการทำงานหลายคนพร้อมกัน ถึงแม้สเป็กตามที่ไมโครซอฟต์ระบุว่าสามารถใช้งานฐานข้อมูลพร้อมกัน 255 ผู้ใช้ (อ่านสเป็กของ MS Access ที่นี่) แต่ความจริงคือ ถ้ามีผู้ใช้งานเกิน 80 ก็จะเริ่มมีปัญหาเรื่องประสิทธิภาพแล้ว

Access VS Excel

สิ่งหนึ่งที่มักได้ยินบ่อย คือคำถามประมาณว่า “ทำไมไม่ทำใน Excel” หรือ “ทำไมไม่ทำใน Access” ความจริงคือ ใครถนัดอย่างไหนก็ใช้แบบนั้น บางท่านสะดวกใช้งาน Excel ก็ใช้ Excel ทำฐานข้อมูลก็ได้ แต่ สองโปรแกรมนี้ แตกต่างกันพอสมควร เพราะจุดมุ่งหมายในการพัฒนาต่างกัน ทางฝั่ง Access พัฒนาเพื่อการการทำฐานข้อมูล โดยเฉพาะ ดังนั้นจะมีการออกแบบเพื่อจัดเก็บข้อมูล เช่น แต่ละแถว (หรือระเบียน) จะจัดเก็บข้อมูลเพียง 1 เดียวเท่านั้น ในขณะที่ Excel พัฒนามาเพื่อจัดการเกี่ยวกับเรื่องการคำนวณที่ซับซ้อน

ดังนั้น ใครถนัดแบบไหนก็เลือกแบบนั้น เพราะหัวใจสำคัญของการทำฐานข้อมูลอยู่ที่ ต้องเข้าใจว่า อะไร ใช้ อะไร เอาไปทำอะไร ตรงไหนที่ต้องลิงก์เข้าหากัน โดยส่วนตัว เวลาทำงานกับข้อมูลที่ไม่ต้องเชื่อมโยงซับซ้อนนัก ก็ใช้ Excel แล้วใช้ VLOOKUP หรือ XLOOKUP หรือ Index – Match ในการทำงานเชื่อมโยงข้อมูลข้ามตาราง แต่ถ้าจัดการกับข้อมูลที่ซับซ้อนและมีปริมาณมาก ก็จะทำงานใน Access เป็นหลัก

ที่ผ่านมา พบว่าปัญหาไม่ได้เกิดจากว่า ใช้ Excel หรือ  Access แต่ปัญหาเกิดจากคนทำงานไม่เข้าเรื่องการจัดการกับข้อมูล ซึ่งทำให้การทำงานต้องสะดุด ล่าช้า และมีปัญหาได้ตลอดเวลา

หมายเหตุ: การเขียน Beginner Guide นี้ อยู่บนพื้นฐานของการใช้ชุดโปรแกรม Microsoft 365 และระบบปฏิบัติการ windows 10 อัปเดตล่าสุด เมษายน 2564  ดังนั้นหากท่านผู้อ่านที่รักใช้เวอร์ชันที่แตกต่างจากนี้ ก็อาจจะมีอะไรไม่ตรงกันบ้างเล็กน้อย แต่เชื่อว่าหลักใหญ่ใจความจะยังเหมือนเดิม

เรียกใช้งาน

การเรียกใช้งาน MS Access สำหรับสร้างฐานข้อมูลใหม่ ทำได้สองทางหลัก คือ

กดปุ่ม Start > Access เลือก New > Blank Database > ใส่ชื่อที่ต้องการ คลิก Create

คลิกขวาที่หน้า desktop เลือก new เลือก Microsoft Access Database > ใส่ชื่อที่ต้องการ

สองวิธีข้างต้น เป็นการสร้างฐานข้อมูลใหม่ ที่ยังไม่มีอะไรเลย

Beginner Guide to Access Workspace

มาดูหน้าตาของ Access ว่า แต่ละส่วนมีอะไรบ้าง เมื่อเปิดโปรแกรมขึ้นมา

หน้าตาโปรแกรม Access

Quick Access (แถบเครื่องมือด่วน) อยู่มุมซ้ายด้านบนสุด เป็นแถบเครื่องมือที่รวบรวมปุ่มคำสั่งที่ใช้งานบ่อย เราสามารถปรับแต่งปุ่มตรงนี้ด้วยการกดตรงลูกศรชี้ลงที่อยู่ขวามือสุดใน Quick Access แล้วเลือกสิ่งที่ต้องการ หรือ more command สำหรับเครื่องมืออื่น ๆ

Title Bar (แถบชื่อเรื่อง) จะอยู่ตรงกลางด้านบน จะบอกชื่อฐานข้อมูล หรือ ชื่อไฟล์ ที่เรากำลังทำงานอยู่

Ribbon (ริบบอน) จะเป็นแถบที่อยู่ด้านบน แสดงกลุ่มเครื่องมือทำงานต่าง ๆ  แบ่งเป็นหมวดหมู่เรียกว่า Tab

Navigation pane (บานหน้าต่างนำทาง) อยู่ทางด้านซ้ายมือ เป็นส่วนแสดง object หรือ วัตถุในฐานข้อมูลนั้น (พวก table query form ฯลฯ)

Document (เอกสาร) คือพื้นที่ทำงานและแสดงผล

View (มุมมอง) จะอยู่ด้านล่างสุด โดยมุมล่างซ้ายมือ จะเป็น Status bar แสดงการทำงาน และคำอธิบายคำสั่งที่เลือกใช้แบบสั้น ๆ ส่วนด้านขวาจะเป็น View ที่จะเลือกได้ว่า จะดูงานในแบบ data view หรือ design view

Access Objects

ก่อนจะทำอะไรต่อ ต้องมาทำความรู้จักกับ Object หรือ องค์ประกอบสำหรับการทำงานใน Access ก่อน คือ

Table

Table หรือ ตารางข้อมูล จะเก็บข้อมูลต่าง ๆ สามารถสร้างความสัมพันธ์กันระหว่าง table ด้วยกันได้ แต่ละคอลัมน์จะต้องมีชื่อเฉพาะ และเราทำ (หรือไม่ทำ) Primary Key ไว้ในนี้ได้

Query

Query หรือแบบสอบถาม เป็นตัวกรอง หรือตัวจัดเรียง หรือตัวเลือกเฉพาะบางข้อมูลมาแสดง เราใช้ Query ในการ เลือก เพิ่ม ปรับปรุง และ ลบ ข้อมูลจาก Table โดยจะดึงจากตารางเดียว หรือ หลายตาราง ที่มีความสัมพันธ์กัน หรือแม้กระทั่ง จาก Query ด้วยกันเอง (ถ้ามีความสัมพันธ์กัน

Form

Form เป็นเรื่องของ User Interface เพื่อช่วยให้จัดการกับข้อมูล หรือ ใช้งาน Query เพื่อแสดงผลข้อมูลตามที่กำหนด

Report

Report หรือ รายงาน  สำหรับการปรับแต่งข้อมูล คำนวณ สรุป และ พิมพ์

Macros

Macros เป็นชุดคำสั่งสำหรับดำเนินการเรื่องใดเรื่องหนึ่ง

Modules

เป็นชุดคำสั่งดำเนินการ ที่เขียนด้วย Visual Basic for Applications (VBA)

Beginner Guide to Access Data Types

ใน Access จะมีประเภทข้อมูล แบ่งเป็นประเภทดังนี้

ประเภทคำอธิบายขนาด
Short Textเป็นอักขระ หรือ ตัวเลขที่เก็บในรูปแบบข้อความไม่เกิน 255 อักขระ
Long Textเป็นอักขระ หรือ ตัวเลขที่เก็บในรูปแบบข้อความไม่เกิน 63, 999 อักขระ
Numberข้อมูลเป็นตัวเลข (สามารถนำไปคำนวณได้)1, 2, 4, 8, และ 16 bytes.
Date/Timeข้อมูลปี เก็บตั้งแต่ค.ศ. 100 จนถึง ค.ศ. 99998 bytes.
Currencyเก็บข้อมูลเป็นค่าเงิน8 bytes.
Auto Numberตัวเลขอัตโนมัติที่จะไม่ซ้ำกัน4 bytes (แต่ถ้าตั้งค่าเป็น Replication ID จะได้ 16 bytes
Yes/Noเก็บค่า ใช่ หรือ ไม่ใช่1 bit
Attachmentไฟล์แนบ เช่นรูปภาพ ไฟล์ pdfไม่เกิน 2 GB
OLE objectsOLE objects จะเก็บเป็น เสียง วิดีโอ หรือ Binary Large Objects อื่น ๆไม่เกิน 2 GB
Hyperlinkคลิกเพื่อเชื่อมโยงไม่ที่ใดที่หนึ่งแต่ละลิงก์ เก็บได้สูงสุด 2048 อักขระ
Calculatedการคำนวณจากฟิลด์ หรือ เอาฟิลด์แต่ละฟิลด์ มาคำนวณด้วยกัน 

เมื่อรู้จักองค์ประกอบคร่าว ๆ แล้ว ขั้นต่อไปที่จะมาเรียนรู้กันก็คือ การเริ่มต้นทำงานกับ Access

Named Range: ตั้งชื่อให้ใช้งานง่าย

Named Range หรือ การตั้งชื่อช่วงข้อมูล เป็นการอ้างอิงขั้นพื้นฐานอย่างหนึ่ง ซึ่ง หลายคนมองข้ามไป ดังนั้นจึงอยากนำเรื่องนี้มาเขียนถึงอีกครั้ง โดยเฉพาะเรื่องการนำไปใช้งานจริง เผื่อว่าจะมีประโยชน์กับท่านทั้งหลายบ้าง

อ่านเพิ่มเติม

Mode ใน Excel

Mode ใน Excel เป็นการใช้ฟังก์ชัน mode เพื่อหา ฐานนิยม หรือ ค่าที่มีความถี่สูงสุด ซึ่งฟังก์ชันนี้ทำออกมาเพื่อใช้กับตัวเลขเท่านั้น แต่เราสามารถพลิกแพลงเพื่อใช้หาคำ หรือ ข้อความ ได้เช่นกัน

Mode หรือ ฐานนิยม คือ ค่าที่มีความถี่สูงสุด เมื่อเปรียบเทียบกับค่าอื่นในข้อมูลชุดเดียวกัน แต่ในบางชุดของข้อมูลอาจจะไม่มีค่านิยมก็ได้ วิธีนี้จะแตกต่างกับการหาแนวโน้มสู่ส่วนกลางวิธีอื่น ๆ เช่น มัชฌิมเลขคณิต หรือ มัธยฐาน เพราะจะนับเฉพาะค่าที่มีความถี่สูงสุด หรือ ซ้ำกันมากที่สุด ซึ่งมักใช้กับข้อมูลเชิงคุณภาพ

อ่านเพิ่มเติม

Median

Median ภาษาไทยใช้คำว่า มัธยฐาน คือ ค่ากลาง เป็นวิธีวัดแนวโน้มสู่ส่วนกลางที่ได้รับความนิยมประเภทหนึ่ง ใช้อธิบายข้อมูลที่แบ่งข้อมูลตัวอย่าง หรือประชากร หรือการแจกแจงความน่าจะเป็น สามารถหาได้โดยการเรียงลำดับข้อมูลจากน้อยไปมาก (หรือมากไปน้อยก็ได้) แล้วเอาตัวเลขที่อยู่ตรงกลางเป็นค่ามัธยฐาน ถ้าหากจำนวนสิ่งที่สังเกตการณ์เป็นจำนวนคู่ ทำให้ค่าที่อยู่ตรงกลางมีสองค่า จะหามัชณิมเลขคณิต (mean) ของสองจำนวนนั้นเพื่อให้ได้มัธยฐานเพียงหนึ่งเดียว

อ่านเพิ่มเติม

ค่าเฉลี่ย – Mean, AVERAGE, AVERAGEA, AVERAGEIF, AVERAGEIFS

ค่าเฉลี่ยนี้สามารถคำนวณใน excel ง่าย ๆ โดยใช้ฟังก์ชัน AVERAGE ซึ่งเป็นสิ่งสามัญที่มีการคำนวณบ่อยมากอย่างหนึ่ง เช่น ค่าเฉลี่ยเวลาทำงานของพนักงาน เงินเดือน ฯลฯ ค่าเฉลี่ย ที่จะเขียนถึงนี้ เรียกกันโดยทั่วไปว่า average หรือ มัชฌิมเลขคณิต (arithmetic mean) หรือ จะเรียกสั้น ๆ ว่า ค่า mean

อ่านเพิ่มเติม