SQL
SELECT
เป็นคำสั่งที่ใช้สำหรับการเรียกดูข้อมูลในตาราง (Table) คำสั่ง SQL SELECT สามารถเรียกได้ทั้งตาราง หรือว่า สามารถระบุฟิวด์ที่ต้องการเรียกดูข้อมูลได้
Database : MySQL,Microsoft Access,SQL Server,Oracle
Syntax
เป็นคำสั่งที่ใช้สำหรับการเรียกดูข้อมูลในตาราง (Table) คำสั่ง SQL SELECT สามารถเรียกได้ทั้งตาราง หรือว่า สามารถระบุฟิวด์ที่ต้องการเรียกดูข้อมูลได้
Database : MySQL,Microsoft Access,SQL Server,Oracle
Syntax
SELECT Column1, Column2,
Column3,... FROM [Table-Name]
Table : customer
|
CustomerID
|
Name
|
Email
|
CountryCode
|
Budget
|
Used
|
|
C001
|
Win Weerachai
|
win.weerachai@thaicreate.com
|
TH
|
1000000
|
600000
|
|
C002
|
John Smith
|
john.smith@thaicreate.com
|
EN
|
2000000
|
800000
|
|
C003
|
Jame Born
|
jame.born@thaicreate.com
|
US
|
3000000
|
600000
|
|
C004
|
Chalee Angel
|
chalee.angel@thaicreate.com
|
US
|
4000000
|
100000
|
Sample1 การเลือกข้อมูลที่ระบุฟิวด์
SELECT CustomerID, Name,
Email FROM customer
Output
|
CustomerID
|
Name
|
Email
|
|
C001
|
Win Weerachai
|
win.weerachai@thaicreate.com
|
|
C002
|
John Smith
|
john.smith@thaicreate.com
|
|
C003
|
Jame Born
|
jame.born@thaicreate.com
|
|
C004
|
Chalee Angel
|
chalee.angel@thaicreate.com
|
Sample2 การเลือกข้อมูลทั้งหมดของ Table
SELECT * FROM customer
Output
|
CustomerID
|
Name
|
Email
|
CountryCode
|
Budget
|
Used
|
|
C001
|
Win Weerachai
|
win.weerachai@thaicreate.com
|
TH
|
1000000
|
600000
|
|
C002
|
John Smith
|
john.smith@thaicreate.com
|
EN
|
2000000
|
800000
|
|
C003
|
Jame Born
|
jame.smith@thaicreate.com
|
US
|
3000000
|
600000
|
|
C004
|
Chalee Angel
|
chalee.angel@thaicreate.com
|
US
|
4000000
|
100000
|
SQL WHERE
เป็นคำสั่งที่ใช้สำหรับการระบุเงื่อนไขการเลือกข้อมูลในตาราง (Table) คำสั่ง SQL WHERE สามารถระบุเงื่อนไขในการเลือกข้อมูลได้ 1 เงื่อนไข หรือมากกว่า 1 เงื่อนไข
Database : MySQL,Microsoft Access,SQL Server,Oracle
Syntax
Database : MySQL,Microsoft Access,SQL Server,Oracle
Syntax
SELECT
Column1, Column2, Column3,... FROM Table-Name WHERE [Field] =
'Value'
Table : customer
|
CustomerID
|
Name
|
Email
|
CountryCode
|
Budget
|
Used
|
|
C001
|
Win Weerachai
|
win.weerachai@thaicreate.com
|
TH
|
1000000
|
600000
|
|
C002
|
John Smith
|
john.smith@thaicreate.com
|
EN
|
2000000
|
800000
|
|
C003
|
Jame Born
|
jame.born@thaicreate.com
|
US
|
3000000
|
600000
|
|
C004
|
Chalee Angel
|
chalee.angel@thaicreate.com
|
US
|
4000000
|
100000
|
Sample1 การเลือกข้อมูลโดยใช้ Operators = (เท่ากับ)
SELECT
* FROM customer WHERE CountryCode = 'US'
หรือ แบบ 2 เงื่อนไข ใช้ and เข้ามาเชื่อม วลี
SELECT * FROM customer WHERE CountryCode = 'US' and Budget = '4000000'
หรือ แบบ 2 เงื่อนไข ใช้ and เข้ามาเชื่อม วลี
SELECT * FROM customer WHERE CountryCode = 'US' and Budget = '4000000'
Output
|
CustomerID
|
Name
|
Email
|
CountryCode
|
Budget
|
Used
|
|
C003
|
Jame Born
|
jame.smith@thaicreate.com
|
US
|
3000000
|
600000
|
|
C004
|
Chalee Angel
|
chalee.angel@thaicreate.com
|
US
|
4000000
|
100000
|
|
CustomerID
|
Name
|
Email
|
CountryCode
|
Budget
|
Used
|
|
C004
|
Chalee Angel
|
chalee.angel@thaicreate.com
|
US
|
4000000
|
100000
|
Sample2 การเลือกข้อมูลโดยใช้ Operators != (ไม่เท่ากับ)
SELECT
* FROM customer WHERE CountryCode != 'US'
หรือ แบบ 2 เงื่อนไข ใช้ and เข้ามาเชื่อม วลี
SELECT * FROM customer WHERE CountryCode != 'US' and CountryCode != 'EN'
หรือจะใช้ or
SELECT * FROM customer WHERE CountryCode != 'US' or Budget = '1000000'
หรือ แบบ 2 เงื่อนไข ใช้ and เข้ามาเชื่อม วลี
SELECT * FROM customer WHERE CountryCode != 'US' and CountryCode != 'EN'
หรือจะใช้ or
SELECT * FROM customer WHERE CountryCode != 'US' or Budget = '1000000'
Output
|
CustomerID
|
Name
|
Email
|
CountryCode
|
Budget
|
Used
|
|
C001
|
Win Weerachai
|
win.weerachai@thaicreate.com
|
TH
|
1000000
|
600000
|
|
C002
|
John Smith
|
john.smith@thaicreate.com
|
EN
|
2000000
|
800000
|
|
CustomerID
|
Name
|
Email
|
CountryCode
|
Budget
|
Used
|
|
C001
|
Win Weerachai
|
win.weerachai@thaicreate.com
|
TH
|
1000000
|
600000
|
|
CustomerID
|
Name
|
Email
|
CountryCode
|
Budget
|
Used
|
|
C001
|
Win Weerachai
|
win.weerachai@thaicreate.com
|
TH
|
1000000
|
600000
|
|
C002
|
John Smith
|
john.smith@thaicreate.com
|
EN
|
2000000
|
800000
|
SQL LAST
เป็นคำสั่งที่ใช้สำหรับการระบุเงื่อนไขการเลือกข้อมูลในตาราง (Table) โดยเลือกข้อมูล แถวสุดท้ายของข้อมูลที่พบ
Database : MySQL,Microsoft Access,SQL Server,Oracle
Syntax
Database : MySQL,Microsoft Access,SQL Server,Oracle
Syntax
SELECT
LAST(ColumnName) FROM TableName
Table : customer
|
CustomerID
|
Name
|
Email
|
CountryCode
|
Budget
|
Used
|
|
C001
|
Win Weerachai
|
win.weerachai@thaicreate.com
|
TH
|
1000000
|
600000
|
|
C002
|
John Smith
|
john.smith@thaicreate.com
|
EN
|
2000000
|
800000
|
|
C003
|
Jame Born
|
jame.born@thaicreate.com
|
US
|
3000000
|
600000
|
|
C004
|
Chalee Angel
|
chalee.angel@thaicreate.com
|
US
|
4000000
|
100000
|
Sample1 การเลือกข้อมูลแบบด้วย LAST ในตาราง customer
SELECT
LAST(Name) As Name FROM customer
Output
|
Name
|
|
Chalee Angel
|
SQL AS
เป็นคำสั่งที่ใช้สำหรับการเลือกข้อมูลโดยทำการสร้าง Alias
Name (Column) ขึ้นมาใหม่
Database : MySQL,Microsoft Access,SQL Server,Oracle
Syntax
Database : MySQL,Microsoft Access,SQL Server,Oracle
Syntax
SELECT
Column As NewColumn FROM Table1
Table : customer1
|
CustomerID
|
Name
|
Email
|
CountryCode
|
Budget
|
Used
|
|
C001
|
Win Weerachai
|
win.weerachai@thaicreate.com
|
TH
|
1000000
|
600000
|
|
C002
|
John Smith
|
john.smith@thaicreate.com
|
EN
|
2000000
|
800000
|
|
C003
|
Jame Born
|
jame.born@thaicreate.com
|
US
|
3000000
|
600000
|
|
C004
|
Chalee Angel
|
chalee.angel@thaicreate.com
|
US
|
4000000
|
100000
|
Sample1 การรวมค่า Used แล้วสร้างชื่อ Column ใหม่ชื่อว่า Total
SELECT
SUM(Used) As Total FROM customer
Output
|
Total
|
|
2100000
|
SQL ORACLE RESERVED WORDS / Keywords
เป็นคำสงวนหลีกเลี่ยงห้ามใช้ ในฐานข้อมูล Oracle
Database
Database : Oracle,
คำสงวนทั้งหมด
Database : Oracle,
คำสงวนทั้งหมด
|
Oracle Reserved Words and Keywords
|
||
|
ACCESS
|
ACCOUNT
|
ACTIVATE
|
|
ADD
|
ADMIN
|
ADVISE
|
|
AFTER
|
ALL
|
ALL_ROWS
|
|
ALLOCATE
|
ALTER
|
ANALYZE
|
|
AND
|
ANY
|
ARCHIVE
|
|
ARCHIVELOG
|
ARRAY
|
AS
|
|
ASC
|
AT
|
AUDIT
|
|
AUTHENTICATED
|
AUTHORIZATION
|
AUTOEXTEND
|
|
AUTOMATIC
|
BACKUP
|
BECOME
|
|
BEFORE
|
BEGIN
|
BETWEEN
|
|
BFILE
|
BITMAP
|
BLOB
|
|
BLOCK
|
BODY
|
BY
|
|
CACHE
|
CACHE_INSTANCES
|
CANCEL
|
|
CASCADE
|
CAST
|
CFILE
|
|
CHAINED
|
CHANGE
|
CHAR
|
|
CHAR_CS
|
CHARACTER
|
CHECK
|
|
CHECKPOINT
|
CHOOSE
|
CHUNK
|
|
CLEAR
|
CLOB
|
CLONE
|
|
CLOSE
|
CLOSE_CACHED_OPEN_CURSORS
|
CLUSTER
|
|
COALESCE
|
COLUMN
|
COLUMNS
|
|
COMMENT
|
COMMIT
|
COMMITTED
|
|
COMPATIBILITY
|
COMPILE
|
COMPLETE
|
|
COMPOSITE_LIMIT
|
COMPRESS
|
COMPUTE
|
|
CONNECT
|
CONNECT_TIME
|
CONSTRAINT
|
|
CONSTRAINTS
|
CONTENTS
|
CONTINUE
|
|
CONTROLFILE
|
CONVERT
|
COST
|
|
CPU_PER_CALL
|
CPU_PER_SESSION
|
CREATE
|
|
CURRENT
|
CURRENT_SCHEMA
|
CURREN_USER
|
|
CURSOR
|
CYCLE
|
|
|
DANGLING
|
DATABASE
|
DATAFILE
|
|
DATAFILES
|
DATAOBJNO
|
DATE
|
|
DBA
|
DBHIGH
|
DBLOW
|
|
DBMAC
|
DEALLOCATE
|
DEBUG
|
|
DEC
|
DECIMAL
|
DECLARE
|
|
DEFAULT
|
DEFERRABLE
|
DEFERRED
|
|
DEGREE
|
DELETE
|
DEREF
|
|
DESC
|
DIRECTORY
|
DISABLE
|
|
DISCONNECT
|
DISMOUNT
|
DISTINCT
|
|
DISTRIBUTED
|
DML
|
DOUBLE
|
|
DROP
|
DUMP
|
EACH
|
|
ELSE
|
ENABLE
|
END
|
|
ENFORCE
|
ENTRY
|
ESCAPE
|
|
EXCEPT
|
EXCEPTIONS
|
EXCHANGE
|
|
EXCLUDING
|
EXCLUSIVE
|
EXECUTE
|
|
EXISTS
|
EXPIRE
|
EXPLAIN
|
|
EXTENT
|
EXTENTS
|
EXTERNALLY
|
|
FAILED_LOGIN_ATTEMPTS
|
FALSE
|
FAST
|
|
FILE
|
FIRST_ROWS
|
FLAGGER
|
|
FLOAT
|
FLOB
|
FLUSH
|
|
FOR
|
FORCE
|
FOREIGN
|
|
FREELIST
|
FREELISTS
|
FROM
|
|
FULL
|
FUNCTION
|
GLOBAL
|
|
GLOBALLY
|
GLOBAL_NAME
|
GRANT
|
|
GROUP
|
GROUPS
|
HASH
|
|
HASHKEYS
|
HAVING
|
HEADER
|
|
HEAP
|
IDENTIFIED
|
IDGENERATORS
|
|
IDLE_TIME
|
IF
|
IMMEDIATE
|
|
IN
|
INCLUDING
|
INCREMENT
|
|
INDEX
|
INDEXED
|
INDEXES
|
|
INDICATOR
|
IND_PARTITION
|
INITIAL
|
|
INITIALLY
|
INITRANS
|
INSERT
|
|
INSTANCE
|
INSTANCES
|
INSTEAD
|
|
INT
|
INTEGER
|
INTERMEDIATE
|
|
INTERSECT
|
INTO
|
IS
|
|
ISOLATION
|
ISOLATION_LEVEL
|
KEEP
|
|
KEY
|
KILL
|
LABEL
|
|
LAYER
|
LESS
|
LEVEL
|
|
LIBRARY
|
LIKE
|
LIMIT
|
|
LINK
|
LIST
|
LOB
|
|
LOCAL
|
LOCK
|
LOCKED
|
|
LOG
|
LOGFILE
|
LOGGING
|
|
LOGICAL_READS_PER_CALL
|
LOGICAL_READS_PER_SESSION
|
LONG
|
|
MANAGE
|
MASTER
|
MAX
|
|
MAXARCHLOGS
|
MAXDATAFILES
|
MAXEXTENTS
|
|
MAXINSTANCES
|
MAXLOGFILES
|
MAXLOGHISTORY
|
|
MAXLOGMEMBERS
|
MAXSIZE
|
MAXTRANS
|
|
MAXVALUE
|
MIN
|
MEMBER
|
|
MINIMUM
|
MINEXTENTS
|
MINUS
|
|
MINVALUE
|
MLSLABEL
|
MLS_LABEL_FORMAT
|
|
MODE
|
MODIFY
|
MOUNT
|
|
MOVE
|
MTS_DISPATCHERS
|
MULTISET
|
|
NATIONAL
|
NCHAR
|
NCHAR_CS
|
|
NCLOB
|
NEEDED
|
NESTED
|
|
NETWORK
|
NEW
|
NEXT
|
|
NOARCHIVELOG
|
NOAUDIT
|
NOCACHE
|
|
NOCOMPRESS
|
NOCYCLE
|
NOFORCE
|
|
NOLOGGING
|
NOMAXVALUE
|
NOMINVALUE
|
|
NONE
|
NOORDER
|
NOOVERRIDE
|
|
NOPARALLEL
|
NOPARALLEL
|
NOREVERSE
|
|
NORMAL
|
NOSORT
|
NOT
|
|
NOTHING
|
NOWAIT
|
NULL
|
|
NUMBER
|
NUMERIC
|
NVARCHAR2
|
|
OBJECT
|
OBJNO
|
OBJNO_REUSE
|
|
OF
|
OFF
|
OFFLINE
|
|
OID
|
OIDINDEX
|
OLD
|
|
ON
|
ONLINE
|
ONLY
|
|
OPCODE
|
OPEN
|
OPTIMAL
|
|
OPTIMIZER_GOAL
|
OPTION
|
OR
|
|
ORDER
|
ORGANIZATION
|
OSLABEL
|
|
OVERFLOW
|
OWN
|
PACKAGE
|
|
PARALLEL
|
PARTITION
|
PASSWORD
|
|
PASSWORD_GRACE_TIME
|
PASSWORD_LIFE_TIME
|
PASSWORD_LOCK_TIME
|
|
PASSWORD_REUSE_MAX
|
PASSWORD_REUSE_TIME
|
PASSWORD_VERIFY_FUNCTION
|
|
PCTFREE
|
PCTINCREASE
|
PCTTHRESHOLD
|
|
PCTUSED
|
PCTVERSION
|
PERCENT
|
|
PERMANENT
|
PLAN
|
PLSQL_DEBUG
|
|
POST_TRANSACTION
|
PRECISION
|
PRESERVE
|
|
PRIMARY
|
PRIOR
|
PRIVATE
|
|
PRIVATE_SGA
|
PRIVILEGE
|
PRIVILEGES
|
|
PROCEDURE
|
PROFILE
|
PUBLIC
|
|
PURGE
|
QUEUE
|
QUOTA
|
|
RANGE
|
RAW
|
RBA
|
|
READ
|
READUP
|
REAL
|
|
REBUILD
|
RECOVER
|
RECOVERABLE
|
|
RECOVERY
|
REF
|
REFERENCES
|
|
REFERENCING
|
REFRESH
|
RENAME
|
|
REPLACE
|
RESET
|
RESETLOGS
|
|
RESIZE
|
RESOURCE
|
RESTRICTED
|
|
RETURN
|
RETURNING
|
REUSE
|
|
REVERSE
|
REVOKE
|
ROLE
|
|
ROLES
|
ROLLBACK
|
ROW
|
|
ROWID
|
ROWNUM
|
ROWS
|
|
RULE
|
SAMPLE
|
SAVEPOINT
|
|
SB4
|
SCAN_INSTANCES
|
SCHEMA
|
|
SCN
|
SCOPE
|
SD_ALL
|
|
SD_INHIBIT
|
SD_SHOW
|
SEGMENT
|
|
SEG_BLOCK
|
SEG_FILE
|
SELECT
|
|
SEQUENCE
|
SERIALIZABLE
|
SESSION
|
|
SESSION_CACHED_CURSORS
|
SESSIONS_PER_USER
|
SET
|
|
SHARE
|
SHARED
|
SHARED_POOL
|
|
SHRINK
|
SIZE
|
SKIP
|
|
SKIP_UNUSABLE_INDEXES
|
SMALLINT
|
SNAPSHOT
|
|
SOME
|
SORT
|
SPECIFICATION
|
|
SPLIT
|
SQL_TRACE
|
STANDBY
|
|
START
|
STATEMENT_ID
|
STATISTICS
|
|
STOP
|
STORAGE
|
STORE
|
|
STRUCTURE
|
SUCCESSFUL
|
SWITCH
|
|
SYS_OP_ENFORCE_NOT_NULL$
|
SYS_OP_NTCIMG$
|
SYNONYM
|
|
SYSDATE
|
SYSDBA
|
SYSOPER
|
|
SYSTEM
|
TABLE
|
TABLES
|
|
TABLESPACE
|
TABLESPACE_NO
|
TABNO
|
|
TEMPORARY
|
THAN
|
THE
|
|
THEN
|
THREAD
|
TIMESTAMP
|
|
TIME
|
TO
|
TOPLEVEL
|
|
TRACE
|
TRACING
|
TRANSACTION
|
|
TRANSITIONAL
|
TRIGGER
|
TRIGGERS
|
|
TRUE
|
TRUNCATE
|
TX
|
|
TYPE
|
UB2
|
UBA
|
|
UID
|
UNARCHIVED
|
UNDO
|
|
UNION
|
UNIQUE
|
UNLIMITED
|
|
UNLOCK
|
UNRECOVERABLE
|
UNTIL
|
|
UNUSABLE
|
UNUSED
|
UPDATABLE
|
|
UPDATE
|
USAGE
|
USE
|
|
USER
|
USING
|
VALIDATE
|
|
VALIDATION
|
VALUE
|
VALUES
|
|
VARCHAR
|
VARCHAR2
|
VARYING
|
|
VIEW
|
WHEN
|
WHENEVER
|
|
WHERE
|
WITH
|
WITHOUT
|
|
WORK
|
WRITE
|
WRITEDOWN
|
|
WRITEUP
|
XID
|
YEAR
|
|
ZONE
|
||
|
SQL MYSQL RESERVED WORDS
เป็นคำสงวนที่ห้ามใช้
ในฐานข้อมูล MySQL หรือสามารถใช้โดยการครอบด้วยเครื่องหมาย `wording`
Database : MySQL, Syntax
SELECT * FROM
`order` ....
คำสงวนทั้งหมด |
|
ACCESSIBLE
|
ADD
|
ALL
|
|
ALTER
|
ANALYZE
|
AND
|
|
AS
|
ASC
|
ASENSITIVE
|
|
BEFORE
|
BETWEEN
|
BIGINT
|
|
BINARY
|
BLOB
|
BOTH
|
|
BY
|
CALL
|
CASCADE
|
|
CASE
|
CHANGE
|
CHAR
|
|
CHARACTER
|
CHECK
|
COLLATE
|
|
COLUMN
|
CONDITION
|
CONSTRAINT
|
|
CONTINUE
|
CONVERT
|
CREATE
|
|
CROSS
|
CURRENT_DATE
|
CURRENT_TIME
|
|
CURRENT_TIMESTAMP
|
CURRENT_USER
|
CURSOR
|
|
DATABASE
|
DATABASES
|
DAY_HOUR
|
|
DAY_MICROSECOND
|
DAY_MINUTE
|
DAY_SECOND
|
|
DEC
|
DECIMAL
|
DECLARE
|
|
DEFAULT
|
DELAYED
|
DELETE
|
|
DESC
|
DESCRIBE
|
DETERMINISTIC
|
|
DISTINCT
|
DISTINCTROW
|
DIV
|
|
DOUBLE
|
DROP
|
DUAL
|
|
EACH
|
ELSE
|
ELSEIF
|
|
ENCLOSED
|
ESCAPED
|
EXISTS
|
|
EXIT
|
EXPLAIN
|
FALSE
|
|
FETCH
|
FLOAT
|
FLOAT4
|
|
FLOAT8
|
FOR
|
FORCE
|
|
FOREIGN
|
FROM
|
FULLTEXT
|
|
GRANT
|
GROUP
|
HAVING
|
|
HIGH_PRIORITY
|
HOUR_MICROSECOND
|
HOUR_MINUTE
|
|
HOUR_SECOND
|
IF
|
IGNORE
|
|
IN
|
INDEX
|
INFILE
|
|
INNER
|
INOUT
|
INSENSITIVE
|
|
INSERT
|
INT
|
INT1
|
|
INT2
|
INT3
|
INT4
|
|
INT8
|
INTEGER
|
INTERVAL
|
|
INTO
|
IS
|
ITERATE
|
|
JOIN
|
KEY
|
KEYS
|
|
KILL
|
LEADING
|
LEAVE
|
|
LEFT
|
LIKE
|
LIMIT
|
|
LINEAR
|
LINES
|
LOAD
|
|
LOCALTIME
|
LOCALTIMESTAMP
|
LOCK
|
|
LONG
|
LONGBLOB
|
LONGTEXT
|
|
LOOP
|
LOW_PRIORITY
|
MASTER_SSL_VERIFY_SERVER_CERT
|
|
MATCH
|
MAXVALUE
|
MEDIUMBLOB
|
|
MEDIUMINT
|
MEDIUMTEXT
|
MIDDLEINT
|
|
MINUTE_MICROSECOND
|
MINUTE_SECOND
|
MOD
|
|
MODIFIES
|
NATURAL
|
NOT
|
|
NO_WRITE_TO_BINLOG
|
NULL
|
NUMERIC
|
|
ON
|
OPTIMIZE
|
OPTION
|
|
OPTIONALLY
|
OR
|
ORDER
|
|
OUT
|
OUTER
|
OUTFILE
|
|
PRECISION
|
PRIMARY
|
PROCEDURE
|
|
PURGE
|
RANGE
|
READ
|
|
READS
|
READ_WRITE
|
REAL
|
|
REFERENCES
|
REGEXP
|
RELEASE
|
|
RENAME
|
REPEAT
|
REPLACE
|
|
REQUIRE
|
RESIGNAL
|
RESTRICT
|
|
RETURN
|
REVOKE
|
RIGHT
|
|
RLIKE
|
SCHEMA
|
SCHEMAS
|
|
SECOND_MICROSECOND
|
SELECT
|
SENSITIVE
|
|
SEPARATOR
|
SET
|
SHOW
|
|
SIGNAL
|
SMALLINT
|
SPATIAL
|
|
SPECIFIC
|
SQL
|
SQLEXCEPTION
|
|
SQLSTATE
|
SQLWARNING
|
SQL_BIG_RESULT
|
|
SQL_CALC_FOUND_ROWS
|
SQL_SMALL_RESULT
|
SSL
|
|
STARTING
|
STRAIGHT_JOIN
|
TABLE
|
|
TERMINATED
|
THEN
|
TINYBLOB
|
|
TINYINT
|
TINYTEXT
|
TO
|
|
TRAILING
|
TRIGGER
|
TRUE
|
|
UNDO
|
UNION
|
UNIQUE
|
|
UNLOCK
|
UNSIGNED
|
UPDATE
|
|
USAGE
|
USE
|
USING
|
|
UTC_DATE
|
UTC_TIME
|
UTC_TIMESTAMP
|
|
VALUES
|
VARBINARY
|
VARCHAR
|
|
VARCHARACTER
|
VARYING
|
WHEN
|
|
WHERE
|
WHILE
|
WITH
|
|
WRITE
|
XOR
|
YEAR_MONTH
|
|
ZEROFILL
|
สำหรับ SQL กรณีที่ต้องการนำไปใช้
create database mytest;
use mytest;
create table reserved_words (reserved_word varchar(50));
create index reserved_words_1ix on reserved_words(reserved_word);
insert into reserved_words (reserved_word) values
('ACCESSIBLE'),
('ALTER'),
('AS'),
('BEFORE'),
('BINARY'),
('BY'),
('CASE'),
('CHARACTER'),
('COLUMN'),
('CONTINUE'),
('CROSS'),
('CURRENT_TIMESTAMP'),
('DATABASE'),
('DAY_MICROSECOND'),
('DEC'),
('DEFAULT'),
('DESC'),
('DISTINCT'),
('DOUBLE'),
('EACH'),
('ENCLOSED'),
('EXIT'),
('FETCH'),
('FLOAT8'),
('FOREIGN'),
('GRANT'),
('HIGH_PRIORITY'),
('HOUR_SECOND'),
('IN'),
('INNER'),
('INSERT'),
('INT2'),
('INT8'),
('INTO'),
('JOIN'),
('KILL'),
('LEFT'),
('LINEAR'),
('LOCALTIME'),
('LONG'),
('LOOP'),
('MATCH'),
('MEDIUMTEXT'),
('MINUTE_SECOND'),
('NATURAL'),
('NULL'),
('OPTIMIZE'),
('OR'),
('OUTER'),
('PRIMARY'),
('RANGE'),
('READ_WRITE'),
('REGEXP'),
('REPEAT'),
('RESTRICT'),
('RIGHT'),
('SCHEMAS'),
('SENSITIVE'),
('SHOW'),
('SPECIFIC'),
('SQLSTATE'),
('SQL_CALC_FOUND_ROWS'),
('STARTING'),
('TERMINATED'),
('TINYINT'),
('TRAILING'),
('UNDO'),
('UNLOCK'),
('USAGE'),
('UTC_DATE'),
('VALUES'),
('VARCHARACTER'),
('WHERE'),
('WRITE'),
('ZEROFILL'),
('ALL'),
('AND'),
('ASENSITIVE'),
('BIGINT'),
('BOTH'),
('CASCADE'),
('CHAR'),
('COLLATE'),
('CONSTRAINT'),
('CREATE'),
('CURRENT_TIME'),
('CURSOR'),
('DAY_HOUR'),
('DAY_SECOND'),
('DECLARE'),
('DELETE'),
('DETERMINISTIC'),
('DIV'),
('DUAL'),
('ELSEIF'),
('EXISTS'),
('FALSE'),
('FLOAT4'),
('FORCE'),
('FULLTEXT'),
('HAVING'),
('HOUR_MINUTE'),
('IGNORE'),
('INFILE'),
('INSENSITIVE'),
('INT1'),
('INT4'),
('INTERVAL'),
('ITERATE'),
('KEYS'),
('LEAVE'),
('LIMIT'),
('LOAD'),
('LOCK'),
('LONGTEXT'),
('MASTER_SSL_VERIFY_SERVER_CERT'),
('MEDIUMINT'),
('MINUTE_MICROSECOND'),
('MODIFIES'),
('NO_WRITE_TO_BINLOG'),
('ON'),
('OPTIONALLY'),
('OUT'),
('PRECISION'),
('PURGE'),
('READS'),
('REFERENCES'),
('RENAME'),
('REQUIRE'),
('REVOKE'),
('SCHEMA'),
('SELECT'),
('SET'),
('SPATIAL'),
('SQLEXCEPTION'),
('SQL_BIG_RESULT'),
('SSL'),
('TABLE'),
('TINYBLOB'),
('TO'),
('TRUE'),
('UNIQUE'),
('UPDATE'),
('USING'),
('UTC_TIMESTAMP'),
('VARCHAR'),
('WHEN'),
('WITH'),
('YEAR_MONTH'),
('ADD'),
('ANALYZE'),
('ASC'),
('BETWEEN'),
('BLOB'),
('CALL'),
('CHANGE'),
('CHECK'),
('CONDITION'),
('CONVERT'),
('CURRENT_DATE'),
('CURRENT_USER'),
('DATABASES'),
('DAY_MINUTE'),
('DECIMAL'),
('DELAYED'),
('DESCRIBE'),
('DISTINCTROW'),
('DROP'),
('ELSE'),
('ESCAPED'),
('EXPLAIN'),
('FLOAT'),
('FOR'),
('FROM'),
('GROUP'),
('HOUR_MICROSECOND'),
('IF'),
('INDEX'),
('INOUT'),
('INT'),
('INT3'),
('INTEGER'),
('IS'),
('KEY'),
('LEADING'),
('LIKE'),
('LINES'),
('LOCALTIMESTAMP'),
('LONGBLOB'),
('LOW_PRIORITY'),
('MEDIUMBLOB'),
('MIDDLEINT'),
('MOD'),
('NOT'),
('NUMERIC'),
('OPTION'),
('ORDER'),
('OUTFILE'),
('PROCEDURE'),
('READ'),
('REAL'),
('RELEASE'),
('REPLACE'),
('RETURN'),
('RLIKE'),
('SECOND_MICROSECOND'),
('SEPARATOR'),
('SMALLINT'),
('SQL'),
('SQLWARNING'),
('SQL_SMALL_RESULT'),
('STRAIGHT_JOIN'),
('THEN'),
('TINYTEXT'),
('TRIGGER'),
('UNION'),
('UNSIGNED'),
('USE'),
('UTC_TIME'),
('VARBINARY'),
('VARYING'),
('WHILE'),
('XOR')
;
use mytest;
create table reserved_words (reserved_word varchar(50));
create index reserved_words_1ix on reserved_words(reserved_word);
insert into reserved_words (reserved_word) values
('ACCESSIBLE'),
('ALTER'),
('AS'),
('BEFORE'),
('BINARY'),
('BY'),
('CASE'),
('CHARACTER'),
('COLUMN'),
('CONTINUE'),
('CROSS'),
('CURRENT_TIMESTAMP'),
('DATABASE'),
('DAY_MICROSECOND'),
('DEC'),
('DEFAULT'),
('DESC'),
('DISTINCT'),
('DOUBLE'),
('EACH'),
('ENCLOSED'),
('EXIT'),
('FETCH'),
('FLOAT8'),
('FOREIGN'),
('GRANT'),
('HIGH_PRIORITY'),
('HOUR_SECOND'),
('IN'),
('INNER'),
('INSERT'),
('INT2'),
('INT8'),
('INTO'),
('JOIN'),
('KILL'),
('LEFT'),
('LINEAR'),
('LOCALTIME'),
('LONG'),
('LOOP'),
('MATCH'),
('MEDIUMTEXT'),
('MINUTE_SECOND'),
('NATURAL'),
('NULL'),
('OPTIMIZE'),
('OR'),
('OUTER'),
('PRIMARY'),
('RANGE'),
('READ_WRITE'),
('REGEXP'),
('REPEAT'),
('RESTRICT'),
('RIGHT'),
('SCHEMAS'),
('SENSITIVE'),
('SHOW'),
('SPECIFIC'),
('SQLSTATE'),
('SQL_CALC_FOUND_ROWS'),
('STARTING'),
('TERMINATED'),
('TINYINT'),
('TRAILING'),
('UNDO'),
('UNLOCK'),
('USAGE'),
('UTC_DATE'),
('VALUES'),
('VARCHARACTER'),
('WHERE'),
('WRITE'),
('ZEROFILL'),
('ALL'),
('AND'),
('ASENSITIVE'),
('BIGINT'),
('BOTH'),
('CASCADE'),
('CHAR'),
('COLLATE'),
('CONSTRAINT'),
('CREATE'),
('CURRENT_TIME'),
('CURSOR'),
('DAY_HOUR'),
('DAY_SECOND'),
('DECLARE'),
('DELETE'),
('DETERMINISTIC'),
('DIV'),
('DUAL'),
('ELSEIF'),
('EXISTS'),
('FALSE'),
('FLOAT4'),
('FORCE'),
('FULLTEXT'),
('HAVING'),
('HOUR_MINUTE'),
('IGNORE'),
('INFILE'),
('INSENSITIVE'),
('INT1'),
('INT4'),
('INTERVAL'),
('ITERATE'),
('KEYS'),
('LEAVE'),
('LIMIT'),
('LOAD'),
('LOCK'),
('LONGTEXT'),
('MASTER_SSL_VERIFY_SERVER_CERT'),
('MEDIUMINT'),
('MINUTE_MICROSECOND'),
('MODIFIES'),
('NO_WRITE_TO_BINLOG'),
('ON'),
('OPTIONALLY'),
('OUT'),
('PRECISION'),
('PURGE'),
('READS'),
('REFERENCES'),
('RENAME'),
('REQUIRE'),
('REVOKE'),
('SCHEMA'),
('SELECT'),
('SET'),
('SPATIAL'),
('SQLEXCEPTION'),
('SQL_BIG_RESULT'),
('SSL'),
('TABLE'),
('TINYBLOB'),
('TO'),
('TRUE'),
('UNIQUE'),
('UPDATE'),
('USING'),
('UTC_TIMESTAMP'),
('VARCHAR'),
('WHEN'),
('WITH'),
('YEAR_MONTH'),
('ADD'),
('ANALYZE'),
('ASC'),
('BETWEEN'),
('BLOB'),
('CALL'),
('CHANGE'),
('CHECK'),
('CONDITION'),
('CONVERT'),
('CURRENT_DATE'),
('CURRENT_USER'),
('DATABASES'),
('DAY_MINUTE'),
('DECIMAL'),
('DELAYED'),
('DESCRIBE'),
('DISTINCTROW'),
('DROP'),
('ELSE'),
('ESCAPED'),
('EXPLAIN'),
('FLOAT'),
('FOR'),
('FROM'),
('GROUP'),
('HOUR_MICROSECOND'),
('IF'),
('INDEX'),
('INOUT'),
('INT'),
('INT3'),
('INTEGER'),
('IS'),
('KEY'),
('LEADING'),
('LIKE'),
('LINES'),
('LOCALTIMESTAMP'),
('LONGBLOB'),
('LOW_PRIORITY'),
('MEDIUMBLOB'),
('MIDDLEINT'),
('MOD'),
('NOT'),
('NUMERIC'),
('OPTION'),
('ORDER'),
('OUTFILE'),
('PROCEDURE'),
('READ'),
('REAL'),
('RELEASE'),
('REPLACE'),
('RETURN'),
('RLIKE'),
('SECOND_MICROSECOND'),
('SEPARATOR'),
('SMALLINT'),
('SQL'),
('SQLWARNING'),
('SQL_SMALL_RESULT'),
('STRAIGHT_JOIN'),
('THEN'),
('TINYTEXT'),
('TRIGGER'),
('UNION'),
('UNSIGNED'),
('USE'),
('UTC_TIME'),
('VARBINARY'),
('VARYING'),
('WHILE'),
('XOR')
;
|
SQL GROUP_CONCAT
เป็นคำสั่งที่ใช้สำหรับการระบุเงื่อนไขการเลือกข้อมูลในตาราง
(Table) โดยทำการ Group
Column และนำข้อมูลที่อยู่ใน Groupเดียวกันมาต่อกันด้วยเครื่องหมายต่าง ๆ เช่น Comma (,)
Database : MySQL, Syntax
SELECT GROUP_CONCAT(Column/Field)
AS [New-Field] FROM [Table-Name] GROUP BY Column/Filed
Table : customer
Sample1 การเลือกข้อมูล ลูกค้า ในแต่ล่ะประเทศ และนำข้อมูลมาต่อกันด้วยเครื่องหมาย Comma (,)
SELECT
CountryCode , GROUP_CONCAT(Name SEPARATOR ',') FROM customer
GROUP BY CountryCode
Output
|
SQL OPTIMIZE TABLE
เป็นคำสั่งที่ใช้ในการเพิ่มประสิทธิ์ภาพให้กับ Table ของฐานข้อมูล MySQL
Database : MySQL
Syntax
Database : MySQL
Syntax
REPAIR
OPTIMIZE `table-name`
SQL COPY TABLE (CREATE TABLE... SELECT...)
เป็นคำสั่งที่ใช้สำหรับสร้างตารางใหม่ โดยทำการ COPY/CREATE
TABLE และข้อมูลจากตารางที่มีอยู่แล้ว
Database : MySQL,Microsoft Access,SQL Server,Oracle
Syntax
Database : MySQL,Microsoft Access,SQL Server,Oracle
Syntax
CREATE
TABLE [Table-Name] SELECT *
FROM [Table-Name] WHERE ....
Table : customer
|
CustomerID
|
Name
|
Email
|
CountryCode
|
Budget
|
Used
|
|
C001
|
Win Weerachai
|
win.weerachai@thaicreate.com
|
TH
|
1000000
|
600000
|
|
C002
|
John Smith
|
john.smith@thaicreate.com
|
EN
|
2000000
|
800000
|
|
C003
|
Jame Born
|
jame.born@thaicreate.com
|
US
|
3000000
|
600000
|
|
C004
|
Chalee Angel
|
chalee.angel@thaicreate.com
|
US
|
4000000
|
100000
|
Sample1 การเพิ่มข้อมูลลงใน Table customer2 โดยการ SELECT จาก customer
CREATE
TABLE customer2 SELECT *
FROM customer
Output (Table : customer2)
|
CustomerID
|
Name
|
Email
|
CountryCode
|
Budget
|
Used
|
|
C001
|
Win Weerachai
|
win.weerachai@thaicreate.com
|
TH
|
1000000
|
600000
|
|
C002
|
John Smith
|
john.smith@thaicreate.com
|
EN
|
2000000
|
800000
|
|
C003
|
Jame Born
|
jame.born@thaicreate.com
|
US
|
3000000
|
600000
|
|
C004
|
Chalee Angel
|
chalee.angel@thaicreate.com
|
US
|
4000000
|
100000
|
MYSQL ADDDATE()
เป็นคำสั่งของ MySQL กับ DateTime โดย ADDDATE ใช้ในการหา
เพิ่มหรอลดค่าของวันที่
Database : MySQL
Syntax
Database : MySQL
Syntax
ADDDATE(date,INTERVAL
expr unit), ADDDATE(expr,days)
expr argument for each unit value.
|
unit Value
|
Expected expr Format
|
|
MICROSECOND
|
MICROSECONDS
|
|
SECOND
|
SECONDS
|
|
MINUTE
|
MINUTES
|
|
HOUR
|
HOURS
|
|
DAY
|
DAYS
|
|
WEEK
|
WEEKS
|
|
MONTH
|
MONTHS
|
|
QUARTER
|
QUARTERS
|
|
YEAR
|
YEARS
|
|
SECOND_MICROSECOND
|
'SECONDS.MICROSECONDS'
|
|
MINUTE_MICROSECOND
|
'MINUTES:SECONDS.MICROSECONDS'
|
|
MINUTE_SECOND
|
'MINUTES:SECONDS'
|
|
HOUR_MICROSECOND
|
'HOURS:MINUTES:SECONDS.MICROSECONDS'
|
|
HOUR_SECOND
|
'HOURS:MINUTES:SECONDS'
|
|
HOUR_MINUTE
|
'HOURS:MINUTES'
|
|
DAY_MICROSECOND
|
'DAYS
HOURS:MINUTES:SECONDS.MICROSECONDS'
|
|
DAY_SECOND
|
'DAYS
HOURS:MINUTES:SECONDS'
|
|
DAY_MINUTE
|
'DAYS
HOURS:MINUTES'
|
|
DAY_HOUR
|
'DAYS
HOURS'
|
|
YEAR_MONTH
|
'YEARS-MONTHS'
|
ทั้งนี้ยังสามารถใช้ INTERVAL เข้ามา + หรือ - ค่าวันที่ได้เช่นเดียวกัน
date + INTERVAL expr unit
date - INTERVAL expr unit
date - INTERVAL expr unit
Sample
SELECT
ADDDATE('2008-01-02', INTERVAL 31 DAY);
-> 2008-02-02
SELECT ADDDATE('2008-01-02', 31);
-> 2008-02-02
-> 2008-02-02
SELECT ADDDATE('2008-01-02', 31);
-> 2008-02-02
MYSQL DATE_ADD() , DATE_SUB()
ที่มา ; http://www.thaicreate.com/tutorial/mysql-adddate.html
ไม่มีความคิดเห็น:
แสดงความคิดเห็น