Các dân tộc Việt Nam

Nhóm Dân tộc Dân số Tên gọi khác
 Việt Nam 04/2014 90.493.352 Số liệu dân số 04/2014[3]
 Việt Nam 04/2009 85.846.997 Trong đó có tính cả 2.134 người thành phần khác
1. Nhóm Việt – Mường
(Vietic)
Kinh 73.594.427 Việt
Chứt 6.022 Xá La Vàng, Chà Củi, Tắc Củi, Mày
Mường 1.268.963 Mol, Mual
Thổ 74.458
2. Nhóm Tày – Thái
(Tai–Kadai)
Bố Y 2.273 (Bouyei) Chủng Chá, Trung Gia, Pầu Y, Pủ Dí
Giáy 58.617 (Bouyei) Nhắng, Giắng, Sa Nhân, Pấu Thỉn, Chủng Chá, Pu Năm
Lào 14.928 Lào Bốc, Lào Nọi
Lự 5.601 Lừ, Duôn, Nhuồn
Nùng 968.800
Sán Chay 169.410 Mán, Cao Lan – Sán Chỉ, Hờn Bạn, Hờn Chùng, Sơn Tử
Tày 1.626.392 Thổ
Thái 1.550.423 Táy
3. Nhóm Kadai
(Kra)
Cờ Lao 2.636 (Gelao)
La Chí 13.158 (Lachi) Thổ Đen, Cù Tê, Xá, La Ti, Mán Chí
La Ha 8.177 Xá Khao, Xá Cha, Xá La Nga
Pu Péo 687 (Qabiao, Pubiao) Ka Bẻo, Pen Ti Lô Lô, La Quả, Mán
4. Nhóm Môn – Khmer
(Austroasiatic)
Ba Na 227.716 (Bahnar) Bơ Nâm, Roh, Kon Kde, Ala Công, Kpang Công
Brâu 397 Brao
Bru – Vân Kiều 74.506 (Bru)
Chơ Ro 26.855 Châu Ro, Dơ Ro
Co 33.817 (Cor) Trầu, Cùa, Col, Khùa
Cơ Ho 166.112 (Koho)
Cơ Tu 61.588 (Katu) Ca Tu, Ca Tang, Cao, Hạ
Giẻ Triêng 50.962 Giang Rẫy, Brila, Cà Tang, Doãn
Hrê 127.420 (H’re) Chăm Rê, Thạch Bích
Kháng 13.840 Xá Khao, Xá Đón, Xá Tú Lăng
Khơ Me 1.260.640 Khmer
Khơ Mú 72.929 (Khmu) Xá Cẩu, Pu Thênh, Tày Hạy, Việt Cang, Khá Klậu, Tênh
Mạ 41.405
Mảng 3.700 Mảng Ư, Xá Lá Vàng, Niễng O, Xa Mãng, Xá Cang Lai
M’Nông 102.741 (Mnong)
Ơ Đu 376 Tày Hạt
Rơ Măm 436
Tà Ôi 43.886 (Ta Oi) Tôi Ôi, Ta Hoi, Ta Ôih, Tà Uất, A tuất, Pa Cô ?
Xinh Mun 23.278 Puộc, Pụa, Xá.
Xơ Đăng 169.501 (Sedang) Kmrâng, H’Đang, Con Lan, Brila
X’Tiêng 85.436 (Stieng) Xa Điêng, Tà Mun
5. Nhóm H’Mông – Dao
(Hmong–Mien)
Dao 751.067 (Yao) Mán, Động, Trại, Dìu, Miến, Kiêm, Kìm Mùn
H’Mông 1.068.189 (Hmong) Mông, Mèo, Mẹo, Mán, Miêu Tộc
Pà Thẻn 6.811 Pà Hưng, Mán Pa Teng, Tống
6. Nhóm Nam đảo
(Malayo-Polynesia)
Chăm 161.729 Chiêm Thành, Chăm Pa, Hời, Chàm
Chu Ru 19.314 Chơ Ru, Kru
Ê Đê 331.194 (Rhade) Ra đê
Gia Rai 411.275 (Jarai) Chơ Rai
Ra Glai 122.245 (Roglai) O Rang, Glai, Rô Glai, Radlai
7. Nhóm Hán
(Sinitic)
Hoa 823.071 (Overseas Chinese) Tiều, Hán
Ngái 1.035 (Hakka Chinese) Sán Ngái
Sán Dìu 146.821 Trại, Trại Đát, Sán Rợ, Mán quần cộc, Mán váy xẻ
8. Nhóm Tạng-Miến
(Tibeto-Burma)
Cống 2.029 (Phunoi)
Hà Nhì 21.725 (Hani) U Ní, Xá U Ní, Hà Nhì Già
La Hủ 9.651 (Lahu)
Lô Lô 4.541 (Yi) Mùn Di, Ô Man, Lu Lọc Màn, Di, Qua La, La La, Ma Di
Phù Lá 10.944 Phú Lá (Xá Phó)
Si La 709 Cú Đề Xừ[4][5]

Tính sồ ngày làm việc trong tháng

DECLARE @my int
DECLARE @myDeduct int
DECLARE @day INT
DECLARE @mydate DATETIME

SET @mydate = getdate()

SET @myDeduct = 0
SET DateFirst 1 — Set it monday=1 (value)

–Saturday and Sunday on the first and last day of a month will Deduct 1
IF (DATEPART(weekday,(DATEADD(dd,-(DAY(@mydate)-1),@mydate))) > 5)
SET @myDeduct = @myDeduct + 1

IF (DATEPART(weekday,(DATEADD(dd,-(DAY(DATEADD(mm,1,@mydate))),DATEADD(mm,1,@mydate)))) > 5)
SET @myDeduct = @myDeduct + 1

SET @my = day(DATEADD(dd,-(DAY(DATEADD(mm,1,@mydate))),DATEADD(mm,1,@mydate)))

select (((@my/7) * 5 + (@my%7)) – @myDeduct) as Working_Day_per_month

Các loại thực thể ký tự trong XML

Theo W3 Consortium định nghĩa thực thể là như sau:

Thực thể (Entity) của tài liệu đóng vai trò như là phần gốc của cây thực thể (Entity Tree) và là điểm bắt đầu cho một XML Processor.

Tức là, các thực thể là Placeholder trong XML. Chúng có thể được khai báo trong phần Document Prolog hoặc trong một DTD. Có các loại thực thể khác nhau và chương này trình bày cho bạn về Character Entity.

Cả XML và HTML đều có một số biểu tượng được dành riêng, các biểu tượng này không thể được sử dụng như là nội dung trong XML code. Ví dụ, < và > được sử dụng cho các thẻ mở và thẻ đóng trong XML. Để hiển thị hai ký tự đặc biệt này, các thực thể ký tự được sử dụng.

Có một số ký tự hoặc biểu tượng đặc biệt mà không có sẵn để bạn có thể gõ một cách trực tiếp từ bàn phiems. Các thực thể ký tự cũng có thể được sử dụng để hiển thị các ký tự/biểu tượng này.

Các loại thực thể ký tự trong XML

Có 3 loại thực thể ký tự trong XML:

  • Thực thể ký tự được định nghĩa trước
  • Thực thể ký tự dạng số
  • Thực thể ký tự được đặt tên

Thực thể ký tự được định nghĩa trước trong XML

Chúng được giới thiệu để tránh tính lưỡng nghĩa trong khi sử dụng các biểu tượng này. Ví dụ như ký tự nhỏ hơn ( < ) và ký tự lớn hơn ( > ). Về cơ bản, các thực thể ký tự được sử dụng để giới hạn các thẻ trong XML. Dưới đây là danh sách các thực thể ký tự được định nghĩa trước trong XML. Chúng có thể được sử dụng để biểu diễn các ký tự mà không gặp phải tính lưỡng nghĩa.

  • Dấu và: &amp;
  • Trích dẫn đơn: &apos;
  • Dấu lớn hơn: &gt;
  • Dấu nhỏ hơn: &lt;
  • Trích dẫn kép: &quot;

Các thực thể ký tự dạng số trong XML

Các thực thể ký tự dạng số được sử dụng để tham chiếu tới một thực thể ký tự. Các tham chiếu số có thể là số thập phân hoặc thập lục phân. Thực ra thì có hàng nghìn tham chiếu số có sẵn và việc nhớ chúng là thực sự khó. Các thực thể số này tham chiếu tới ký tự bằng biểu diễn số của ký tự đó trong bộ mã hóa ký tự Unicode.

Cú pháp chung cho tham chiếu thập phân là:

&# decimal number ;

Cú pháp chung cho tham chiếu thập lục phân là:

&#x Hexadecimal number ;

Bảng sau liệt kê một số thực thể ký tự được định nghĩa trước với giá trị số của chúng:

Tên thực thể Ký tự Tham chiếu thập phân Tham chiếu thập lục phân
quot " "
amp & & &
apos ' '
lt < < <
gt > > >

Thực thể ký tự gọi tên trong XML

Để nhớ các ký tự số là khá khó khăn, thì loại thực thể ký tự thường hay sử dụng nhất là thực thể ký tự gọi tên. Ở đây, mỗi thực thể được chỉ định với một tên:

Ví dụ:

  • ‘Aacute’ biểu diễn ký tự chữ hoa .
  • ‘ugrave’ biểu diễn ký tự chữ thường .

Loạt bài hướng dẫn học XML cơ bản và nâng cao của chúng tôi dựa trên nguồn tài liệu của: Tutorialspoint

Follow https://www.facebook.com/vietjackteam/ để tiếp tục theo dõi các loạt bài mới nhất về Java,C,C++,Javascript,HTML,Python,Database,Mobile…. mới nhất của chúng tôi.

Click http://viecbonus.com/vi?code=849 để cập nhật những việc làm mới và HOT nhất với những kỹ năng bạn đang có cũng như để ủng hộ tinh thần cho vietjack.com

Danh mục các hàm về ngày tháng và thời gian

DATE (year. month, day) : Trả về các số thể hiện một ngày cụ thể nào đó. Nếu định dạng của ô là General trước khi hàm được nhập vào, kết quả sẽ được thể hiện ở dạng ngày tháng năm.DATEVALUE (date_text) : Trả về số tuần tự của ngày được thể hiện bởi date_text (chuyển đổi một chuỗi văn bản có dạng ngày tháng năm thành một giá trị ngày tháng năm có thể tính toán được).

DAY (serial_number) : Trả về phần ngày của một giá trị ngày tháng, được đại diện bởi số tuần tự. Kết quả trả về là một số nguyên từ 1 đến 31.

DAYS360 (start_date, end_date, method) : Trả về số ngày giữa hai ngày dựa trên cơ sở một năm có 360 ngày (12 tháng, mỗi tháng có 30 ngày) để dùng cho các tính toán tài chính.

EDATE (start_date, months) : Trả về số tuần tự thể hiện một ngày nào đó tính từ mốc thời gian cho trước và cách mốc thời gian này một số tháng được chỉ định.

EOMONTH (start_date, months) : Trả về số tuần tự thể hiện ngày cuối cùng của một tháng nào đó tính từ mốc thời gian cho trước và cách mốc thời gian này một số tháng được chỉ định.

HOUR (serial_number) : Trả về phần giờ của một giá trị thời gian. Kết quả trả về là một số nguyên từ 0 đến 23.

MINUTE (serial_number) : Trả về phần phút của một giá trị thời gian. Kết quả trả về là một số nguyên từ 0 đến 59.

MONTH (serial_number) : Trả về phần tháng của một giá trị ngày tháng, được đại diện bởi số tuần tự. Kết quả trả về là một số nguyên từ 1 đến 12.

NETWORKDAYS (start_date, end_date, holidays) : Trả về tất cả số ngày làm việc trong một khoảng thời gian giữa start_dateend_date, không kể các ngày cuối tuần và các ngày nghỉ (holidays).

NOW () : Trả về số tuần tự thể hiện ngày giờ hiện tại. Nếu định dạng của ô là General trước khi hàm được nhập vào, kết quả sẽ được thể hiện ở dạng ngày tháng năm và giờ phút giây.

SECOND (serial_number) : Trả về phần giây của một giá trị thời gian. Kết quả trả về là một số nguyên từ 0 đến 59.

TIME (hour, minute, second) : Trả về phần thập phân của một giá trị thời gian (từ 0 đến nhỏ hơn 1). Nếu định dạng của ô là General trước khi hàm được nhập vào, kết quả sẽ được thể hiện ở dạng giờ phút giây.

TIMEVALUE (time_text) : Trả về phần thập phân của một giá trị thời gian (từ 0 đến nhỏ hơn 1) thể hiện bởi time_text (chuyển đổi một chuỗi văn bản có dạng thời gian thành một giá trị thời gian có thể tính toán được).

TODAY () : Trả về số tuần tự thể hiện ngày tháng hiện tại. Nếu định dạng của ô là General trước khi hàm được nhập vào, kết quả sẽ được thể hiện ở dạng ngày tháng năm.

WEEKDAY (serial_number, return_type) : Trả về thứ trong tuần tương ứng với ngày được cung cấp. Kết quả trả về là một số nguyên từ 1 đến 7.

WEEKNUM (serial_number, return_type) : Trả về một số cho biết tuần thứ mấy trong năm.

WORKDAY (start_day, days, holidays) : Trả về một số tuần tự thể hiện số ngày làm việc, có thể là trước hay sau ngày bắt đầu làm việc và trừ đi những ngày cuối tuần và ngày nghỉ (nếu có) trong khoảng thời gian đó.

YEAR (serial_number) : Trả về phần năm của một giá trị ngày tháng, được đại diện bởi số tuần tự. Kết quả trả về là một số nguyên từ 1900 đến 9999.

YEARFRAC (start_date, end_date, basis) : Trả về tỷ lệ của một khoảng thời gian trong một năm.

Hàm WORKDAY()

Cú pháp: = WORKDAY(start_day, days [, holidays])

start_day: Ngày làm mốc để tính.

days: Số ngày làm việc trước hoặc sau start_day. Dùng days > 0 cho số ngày làm việc của một dự án chưa hoàn thành, dùngdays < 0 cho số ngày làm việc của một dự án đã kết thúc.

holidays: Danh sách các ngày nghỉ. Có thể gõ trực tiếp một ngày cụ thể, trong trường hợp có nhiều ngày thì các ngày cách nhau bằng dấu phẩy, và đặt tất cả trong một cặp dấu móc {}.

Ví dụ, để tính số ngày làm việc cho một dự án 30 ngày. tính từ hôm nay, ta dùng công thức:

= WORKDAY(TODAY(), 30)

Tính ngày hoàn thành của một dự án 30 ngày, khởi công ngày 1/12/2007, trong đó nghỉ ngày Noel (25/12) và ngày đầu năm (01/01/2008), dùng công thức:

= WORKDAY(“1/12/2007”, 30, {“25/12/2007”, “1/1/2008”})

Hàm EDATE()

Hàm này trả về một ngày nào đó tính từ mốc thời gian cho trước và cách mốc thời gian này một số tháng được chỉ định
Thường người ta dùng hàm này để tính hạn bảo hành cho một sản phẩm, hoặc ngày đáo hạn hợp đồng…

Cú pháp: = EDATE(start_date, months)

start_date: Ngày dùng làm mốc để tính. Nên nhập ngày này bằng hàm DATE(), hoặc dùng một kết quả trả về của một công thức khác, vì có thể sẽ xảy ra lỗi nếu bạn nhập trực tiếp ngày tháng dưới dạng text.

months: Số tháng trước hoặc sau mốc thời gian start_date (nếu trước thì dùng số âm). Trong trường hợp months là số không nguyên, nó sẽ được làm tròn.

Ô A1 đang chứa ngày cuối tháng 01/2008, tính ngày cuối tháng sau 3 tháng nữa, dùng công thức:

= EDATE(A1, 3) = 30/4/2008

Lưu ý: EDATE() không phải là hàm để tính ngày cuối tháng, mà cho kết quả là ngày trùng với ngày của mốc thời gian muốn tính (start_date). Nếu như trường hợp kết quả trả về là một ngày không hợp lệ của một tháng (ngày 31/4 chẳng hạn), thì EDATE() sẽ lấy ngày cuối tháng của tháng đó (30/4).

Ví dụ khác: Tôi mua một cái USB ngày hôm nay (08/01/2008), hạn bảo hành 36 tháng, vậy nó được bảo hành tới ngày nào?

= EDATE(TODAY(), 36) = 08/01/2011

Hàm EOMONTH()

Xin dịch ra để dễ hiểu: End Of Month = Ngày cuối tháng

Cú pháp: = EOMONTH(start_date, months)

start_date: Ngày dùng làm mốc để tính. Cũng giống hàm EDATE(), nên nhập ngày này bằng hàm DATE(), hoặc dùng một kết quả trả về của một công thức khác, vì có thể sẽ xảy ra lỗi nếu bạn nhập trực tiếp ngày tháng dưới dạng text.

months: Số tháng trước hoặc sau mốc thời gian start_date (nếu trước thì dùng số âm). Trong trường hợp months là số không nguyên, nó sẽ được làm tròn.

Ví dụ: EOMONTH(TODAY(), 25) = 40237 = 28/02/2010


Xem thêm: Working with Date and Time Functions

Hàm xử lý chuỗi trong SQL

Hàm xử lý chuỗi trong SQL được sử dụng để thao tác với chuỗi. Bảng dưới liệt kê chi tiết các hàm xử lý chuỗi quan trọng trong SQL.

Tên hàm Miêu tả
Hàm ASCII() Trả về giá trị số của ký tự cực tả (bên trái nhất)
Hàm BIN() Trả về một biểu diễn chuỗi của tham số
Hàm BIT_LENGTH() Trả về độ dài (số bit) của tham số
Hàm CHAR_LENGTH() Trả về số ký tự của tham số
Hàm CHAR() Trả về ký tự cho mỗi số nguyên đã truyền
Hàm CHARACTER_LENGTH() Giống hàm CHAR_LENGTH()
Hàm CONCAT_WS() Viết tắt của Concatenate With Separator, là một mẫu hàm CONCAT() đặc biệt
Hàm CONCAT() Nối chuỗi
Hàm CONV() Chuyển đổi các số sang các cơ số khác nhau
Hàm ELT() Trả về chuỗi tại chỉ mục
Hàm EXPORT_SET() Trả về một chuỗi để mà với một bit được thiết lập trong bits, bạn lấy một chuỗi on, và với mỗi khi không được thiết lập trong bits, bạn lấy chuỗi off. Các bit trong tham số bits được tính từ phải qua trái
Hàm FIELD() Trả về chỉ mục (vị trí) của tham số đầu tiên trong dãy các tham số
Hàm FIND_IN_SET() Trả về chỉ mục (vị trí) của tham số đầu tiên trong tham số thứ hai
Hàm FORMAT() Trả về một số được định dạng với một vị trí sau dấu thập phân đã cho
Hàm HEX() Trả về một biểu diễn chuỗi của một giá trị thuộc hệ cơ số 16
Hàm INSERT() Chèn một chuỗi con tại vị trí đã cho với số ký tự đã xác định
Hàm INSTR() Trả về chỉ mục cho sự xuất hiện đầu tiên của chuỗi con
Hàm LCASE() Giống hàm LOWER()
Hàm LEFT() Trả về ký tự bên trái nhất
Hàm LENGTH() Trả về độ dài (số byte) của một chuỗi
Hàm LOAD_FILE() Tải file đã được đặt tên
Hàm LOCATE() Trả về vị trí của sự xuất hiện đầu tiên của chuỗi con
Hàm LOWER() Trả về tham số trong kiểu chữ thường
Hàm LPAD() Trả về tham số chuỗi đã được thêm vào bên trái với chuỗi đã cho
Hàm LTRIM() Xóa các Leading space (theo dõi ví dụ để hiểu ý nghĩa của leading space nếu bạn chưa biết)
Hàm MAKE_SET() Trả về một tập hợp chuỗi được phân biệt bởi dấu phảy mà có bit tương ứng trong tập hợp các bit
Hàm MID() Trả về một chuỗi phụ bắt đầu từ vị trí đã cho
Hàm OCT() Trả về biểu diễn chuỗi của tham số thuộc hệ cơ số 8
Hàm OCTET_LENGTH() Giống hàm LENGTH()
Hàm ORD() Nếu ký tự cực tả của tham số là một ký tự được biểu diễn bởi nhiều byte, trả về mã hóa của ký tự đó
Hàm POSITION() Giống hàm LOCATE()
Hàm QUOTE() Lấy tham số để sử dụng trong một lệnh SQL
Hàm REGEXP Pattern matching (so khớp mẫu) sử dụng Regular Expression
Hàm REPEAT() Lặp lại một chuỗi với số lần đã cho
Hàm REPLACE() Thay thế một chuỗi đã cho nếu xuất hiện
Hàm REVERSE() Đảo ngược các ký tự trong một chuỗi
Hàm RIGHT() Trả về ký tự bên phải nhất
Hàm RPAD() Phụ thêm chuỗi với số lần đã cho
Hàm RTRIM() Gỡ bỏ các Trailing space
Hàm SOUNDEX() Trả về một chuỗi soundex
Hàm SOUNDS LIKE So sánh các sound
Hàm SPACE() Trả về một chuỗi gồm số khoảng trống đã cho
Hàm STRCMP() So sánh hai chuỗi
Hàm SUBSTRING_INDEX() Trả về một chuỗi con từ một chuỗi trước số lần xuất hiện đã cho của delimiter
Hàm SUBSTRING(), SUBSTR() Trả về chuỗi phụ như đã xác định
Hàm TRIM() Gỡ bỏ Leading và Trailing space
Hàm UCASE() Giống hàm UPPER()
Hàm UNHEX() Chuyển đổi mỗi cặp ký số thập lục phân thành một ký tự
Hàm UPPER() Chuyển đổi thành chữ hoa

MDF File version

 

Sql MDF File version Product version
Sql7 515  
Sql2000 539  
Sql2005sp1 611  
Sql2005sp2 612  
Sql2008sp1(dev10sp1) 655  
sql2008sp2    
Sql2008sp3    
Sql2008r2 661  
Sql2012(RC0) 705 Microsoft SQL Server 2012 RC0 – 11.0.1750.32
Sql2012(RC1/RTM) 706 Microsoft SQL Server 2012 RC0 – 11.0.1913.38

 

Các hàm xử lý văn bản và chuỗi trong Excel

Bài viết dưới đây tổng hợp các hàm xử lý văn bản và chuỗi trong Excel.

1. Hàm ASC.

Cú pháp: ASC(text).

Chức năng: Hàm ASC giúp chuyển đổi các ký tự double-byte sang các ký tự single-byte.

2. Hàm BATHTEXT.

Cú pháp: BATHTEXT(number).

Chức năng: Dịch số ra chữ (tiếng Thái-lan), rồi thêm hậu tố “Bath” ở phía sau.

3. Hàm CHAR.

Cú pháp: CHAR(number).

Chức năng: Chuyển đổi một mã số trong bộ mã ANSI (có miền giá trị 1- 255) sang ký tự tương ứng.

Hàm CHAR

4. Hàm CLEAN.

Cú pháp: CLEAN(text).

Chức năng: Loại bỏ tất cả những ký tự không in ra được trong chuỗi.

5. Hàm CODE.

Cú pháp: CODE(text).

Chức năng: Trả về mã số của ký tự đầu tiên chuỗi text.

6. Hàm CONCATENATE.

Cú pháp: CONCATENATE(text1, text2…).

Chức năng: Nối nhiều chuỗi thành một chuỗi.

7. Hàm DOLLAR.

Cú pháp: DOLLAR(number, decimals).

Chức năng: Chuyển đổi một số thành dạng tiền tệ (dollar Mỹ), có kèm theo dấu phân cách hàng ngàn và có thể làm tròn theo ý muốn.

8. Hà EXACT.

Cú pháp: EXACT(text1, text2).

Chức năng: So sánh hai chuỗi. Nếu giống nhau thì trả về TRUE, nếu khác nhau thì trả về FALSE. Có phân biệt chữ hoa và thường.

9. Hàm FIND.

Cú pháp: FIND(find_text, within_text, start_num).

Chức năng: Tìm vị trí bắt đầu của một chuỗi con (find_text) trong một chuỗi (within_text), tính theo ký tự đầu tiên.

10. Hàm FIXED.

Cú pháp: FIXED(number, decimals, no_commas).

Chức năng: Chuyển đổi một số thành dạng văn bản (text), có hoặc không kèm theo dấu phân cách hàng ngàn, và có thể làm tròn theo ý muốn.

11. Hàm LEFT.

Cú pháp: LEFT(text, num_chars).

Chức năng: Trả về một hay nhiều ký tự đầu tiên bên trái của một chuỗi, theo số lượng được chỉ định.

12. Hàm LEN.

Cú pháp: LEN(text).

Chức năng: Đếm số ký tự trong một chuỗi.

13. Hàm LOWER.

Cú pháp: LOWER(text).

Chức năng: Đổi tất cả các ký tự trong một chuỗi văn bản thành chữ thường.

Hàm LOWER

14. Hàm MID.

Cú pháp: MID(text, start_num, num_chars).

Chức năng: Trả về một hoặc nhiều ký tự liên tiếp bên trong một chuỗi, bắt đầu tại một vị trí cho trước.

15. Hàm PROPER.

Cú pháp: PROPER(text).

Chức năng: Đổi ký tự đầu tiên trong chuỗi thành chữ in hoa, và đổi các ký tự còn lại thành chữ in thường.

16. Hàm REPLACE.

Cú pháp: REPLACE(old_text, start_num, num_chars, new_text).

Chức năng: Thay thế một phần của chuỗi bằng một chuỗi khác, với số lượng các ký tự được chỉ định.

17. Hàm REPT.

Cú pháp: REPT(text, times).

Chức năng: Lặp lại một chuỗi với số lần được cho trước.

Hàm REPT

18. Hàm RIGHT.

Cú pháp: RIGHT(text, num_chars).

Chức năng: Trả về một hay nhiều ký tự tính từ bên phải của một chuỗi, theo số lượng được chỉ định.

19. Hàm SEARCH.

Cú pháp: SEARCH(find_text, within_text, start_num).

Chức năng: Tìm vị trí bắt đầu của một chuỗi con (find_text) trong một chuỗi (within_text), tính theo ký tự đầu tiên.

20. Hàm SUBSTITUTE.

Cú pháp: SUBSTITUTE(text, old_text, new_text, instance_num).

Chức năng: Thay thế chuỗi này bằng một chuỗi khác.

21. Hàm T.

Cú pháp: T(value).

Chức năng: Trả về một chuỗi nếu trị tham chiếu là chuỗi, ngược lại, sẽ trả về chuỗi rỗng.

22. Hàm TEXT.

Cú pháp: TEXT(value, format_text).

Chức năng: Chuyển đổi một số thành dạng văn bản (text) theo định dạng được chỉ định.

23. Hàm TRIM.

Cú pháp: TRIM(text).

Chức năng: Xóa tất cả những khoảng trắng vô ích trong chuỗi văn bản, chỉ chừa lại những khoảng trắng nào dùng làm dấu cách giữa hai chữ.

24. Hàm UPPER.

Cú pháp: UPPER(text).

Chức năng: Đổi tất cả các ký tự trong chuỗi thành chữ in hoa.

25. Hàm VALUE.

Cú pháp: VALUE(text).

Chức năng: Chuyển một chuỗi thành một số.

Một số hàm xử lý chuỗi trong sql

Trong sql có lẽ chúng ta cũng sử dụng nhiều các hàm xử lý chuỗi. Dưới đây là các hàm xử lý chuỗi trong sql

– ASCII

Hàm này trả về giá trị ASCII của keyboard ví dụ (@,R,9,*)
Cú pháp- ASCII ( character)
Ví dụ:
SELECT ASCII(‘a’) — giá trị trả về= 97
SELECT ASCII(‘b’) — giá trị trả về= 98
SELECT ASCII(‘c’) — giá trị trả về= 99
SELECT ASCII(‘A’) — giá trị trả về= 65
SELECT ASCII(‘B’) — giá trị trả về= 66
SELECT ASCII(‘C’) — giá trị trả về= 67
SELECT ASCII(‘1’) — giá trị trả về= 49
SELECT ASCII(‘2’) — giá trị trả về= 50
SELECT ASCII(‘3’) — giá trị trả về= 51
SELECT ASCII(‘4’) — giá trị trả về= 52
SELECT ASCII(‘5’) — giá trị trả về= 53

– SPACE

Hàm này trả về khoảng trống trong câu lệnh sql
Cú pháp – SPACE ( integer)
Ví dụ:
SELECT (‘SQL’) + SPACE(0) + (‘TUTORIALS’)– giá trị trả về= SQLTUTORIALS
SELECT (‘SQL’) + SPACE(1) + (‘TUTORIALS’)– giá trị trả về = SQL TUTORIALS

– CHARINDEX

Trả về vị trí được tìm thấy của một chuỗi trong chuỗi cha
Cú pháp – CHARINDEX ( string1, string2 [ , start_location ] )
Ví dụ:
SELECT CHARINDEX(‘SQL’, ‘Well organized understand SQL tutorial’)– Value = 27
SELECT CHARINDEX(‘SQL’, ‘Well organized understand SQL tutorial’, 20)– Value = 27
SELECT CHARINDEX(‘SQL’, ‘Well organized understand SQL tutorial’, 30)– Value = 0 (bởi vì giá trị bắt đầu truyền vào từ ký tự 30 trở đi)

– REPLACE

Hàm thay thế chuỗi
Ví dụ:
Cú pháp- REPLACE ( ‘string1’ , ‘string2’ , ‘string3’ )
SELECT REPLACE(‘All Function’ , ‘All’, ‘SQL’)– Value = SQL Function

– UPPER, LOWER

Hàm chuyển đổi thành chữ hoa và chữ thường
Ví dụ:
Cú pháp
– UPPER( ‘string1’)
– LOWER( ‘string1’)
SELECT UPPER(‘Khong con mua thu’)– Value = ‘KHONG CON MUA THU’
SELECT LOWER(‘kHONG CON MUA THU’)– Value = ‘khong con mua thu’

– LEFT,RIGHT,SUBSTRING

Hàm cắt chuỗi bên trái, phải và ở giữa
Ví dụ:
Cú pháp
– LEFT( ‘string1’, số kí tự)
– RIGHT( ‘string1’, số kí tự)
– SUBSTRING ( ‘string1’, vị trí, số kí tự)
SELECT LEFT(‘Khong con mua thu’,5)– Value = ‘Khong’
SELECT RIGHT(‘kHONG CON MUA THU’,3)– Value = ‘THU’
SELECT SUBSTRING (‘kHONG CON MUA THU’,6,3)– Value = ‘CON’

– LTRIM, RTRIM

Loại bỏ khoảng trắng bên trái, bên phải
Ví dụ:
Cú pháp
– LTRIM( ‘string1’)
– RTRIM ( ‘string1’)
SELECT LTRIM(‘ Khong con mua thu’)– Value = ‘Khong con mua thu’
SELECT RTRIM (‘kHONG CON MUA THU ‘)– Value = ‘kHONG CON MUA THU’

– LEN

Trả về số ký tự trong chuỗi
Ví dụ:
Cú pháp
– LEN( ‘string’)
SELECT LEN(‘Khong con mua thu’)– Value = 17

– REVERSE

Đảo chuối
Ví dụ:
Cú pháp
– REVERSE( ‘string’)
SELECT REVERSE(‘Khong con mua thu’)– Value = ‘uht aum noc gnohK’

– STUFF

Với cú pháp hàm STUFF bên dưới có kết quả trả về là một chuỗi mới sau khi đã hủy bỏ một số ký tự hiện có và thêm vào một chuỗi con khác tại vị trí vừa hủy bỏ
Ví dụ:
Cú pháp
– STUFF ( ‘string’,vị trí, chiều dài, chuỗi con)
vị trí: là một số nguyên chỉ định vị trí bắt đầu hủy bỏ các ký tự bên trong chuỗi nguồn.
chiều dài: là một số nguyên chỉ định bao nhiêu ký tự sẽ bị hủy bỏ trong chuỗi nguồn đếm từ bên trái vị trí chỉ định.
SELECT STUFF (‘123456789′,4,3,’ABDCEF’)– Value = ‘123ABCDEF789’

– See more at: http://expressmagazine.net/development/1511/mot-so-ham-xu-ly-chuoi-trong-sql#sthash.cpSzujmz.dpuf

Đồng bộ dữ liệu từ 2 table

— bang nguon
create table sourceTable
(
id int primary key,
Name nvarchar(100) null,
Address nvarchar(100) null,
hashValue varbinary(8000) null
)

— bang dich
create table destTable
(
id int primary key,
Name nvarchar(100) null,
Phone nvarchar(100) null,
hashValue varbinary(8000) null
)
CREATE TRIGGER trgUpdateHashValue ON sourceTable
FOR INSERT, UPDATE
as

UPDATE sourceTable
SET hashValue = (SELECT hashbytes(‘md5’, (SELECT id, Name FOR xml raw)))
insert sourceTable(id, Name, Address)
values(4, ‘DT’,’TPHCM’), (5, ‘CB’,’HN’), (6, ‘Bác Kan’,’BK’)

— insert cac dong nay vao table dich
insert destTable(id, Name, hashValue)
select id, Name, hashValue from sourceTable

—update
— update sourceTable
update sourceTable set Name = ‘Vung Tau’
where id = 1

— update gia tri moi
update t1 set Name = t2.Name
from destTable t1 inner join sourceTable t2 on t1.id = t2.id
where t1.hashValue <> t2.hashValue
—–insert
insert destTable(id, Name, hashValue)
select id, Name, hashValue
from sourceTable t1
where not exists(select 1 from destTable t2 where t1.id = t2.id)

—-view

select * from sourceTable
select * from destTable