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à: &
- Trích dẫn đơn: '
- Dấu lớn hơn: >
- Dấu nhỏ hơn: <
- Trích dẫn kép: "
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_date vàend_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()
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:
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:
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…
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:
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?
Hàm EOMONTH()
Xin dịch ra để dễ hiểu: End Of Month = Ngày cuối tháng
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
Source: MDF File version
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.
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.
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.
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