Trong bài này mình sẽ hướng dẫn cách sử dụng hàm MAX
trong MySQL
thông qua cú pháp và ví dụ thực tế.
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.
1. Mô tả
Hàm MAX
trả về giá trị lớn nhất của biểu thức.
2. Cú pháp
Cú pháp của hàm MAX
trong MySQL
là:
SELECT MAX[aggregate_expression] FROM tables [WHERE conditions];
Hoặc
Bài viết này được đăng tại [free tuts .net]
SELECT expression1, expression2, ... expression_n, MAX[aggregate_expression] FROM tables [WHERE conditions] GROUP BY expression1, expression2, ... expression_n;
Trong đó:
aggregate_expression
: Đây là cột hoặc biểu thức mà từ đó giá trị lớn nhất sẽ được trả về.expression1, expression2, ... expression_n
: Các biểu thức không được gói gọn trong hàmMAX
và phải được bao gồm trong mệnh đềSELECT expression1, expression2, ... expression_n, MAX[aggregate_expression] FROM tables [WHERE conditions] GROUP BY expression1, expression2, ... expression_n;
1 ở cuối câu lệnhSELECT expression1, expression2, ... expression_n, MAX[aggregate_expression] FROM tables [WHERE conditions] GROUP BY expression1, expression2, ... expression_n;
2.SELECT expression1, expression2, ... expression_n, MAX[aggregate_expression] FROM tables [WHERE conditions] GROUP BY expression1, expression2, ... expression_n;
3: Các bảng mà muốn lấy dữ liệu. Phải có ít nhất một bảng được liệt kê trong mệnh đề fromSELECT expression1, expression2, ... expression_n, MAX[aggregate_expression] FROM tables [WHERE conditions] GROUP BY expression1, expression2, ... expression_n;
4: Không bắt buộc. Đây là những điều kiện phải được đáp ứng cho các dữ liệu được chọn.
3. Version
Hàm MAX
có thể được sử dụng trong các phiên bản sau của MySQL
:
- MySQL 5.7, MySQL 5.6, MySQL 5.5, MySQL 5.1, MySQL 5.0, MySQL 4.1, MySQL 4.0, MySQL 3.23
4. Ví dụ
Ví dụ tìm điểm cao nhất lớp
SELECT MAX[diem] AS "diem" FROM lop;
Hàm MAX[] dùng để lấy giá trị lớn nhất trong một cột.
Lưu ý: Giá trị có thể là kiểu số hoặc kiểu chuỗi, ký tự,....
Cú pháp
SELECT MAX[name_column]
FROM name_table;
Một số ví dụ
Chúng ta có một bảng sinh_vien như sau:
[Bạn có thể bấm vào đây để download câu lệnh tạo bảng như bên dưới]
Full_nameGenderAgeCityNguyen Thanh NhanNam19Can ThoPham Thu HuongNu20Vinh LongNguyen Nhu NgocNu20Soc TrangBui Thanh BaoNam19Soc TrangLe My NhanNu22Can ThoTan Thuc BaoNam35An GiangTrinh Giao KimNam44Bac LieuSELECT MAX[Age]
FROM sinh_vien;
Sau khi thực thi, MySQL trả về một bảng kết quả như sau:
Lấy tuổi của sinh viên nữ lớn tuổi nhất. Đặt tên cột trong bảng kết quả là tuoi_lon_nhat
SELECT MAX[Age] AS tuoi_lon_nhat
FROM sinh_vien
WHERE Gender = 'Nu';
Sau khi thực thi, MySQL trả về một bảng kết quả như sau:
Truy xuất thông tin của sinh viên có tuổi lớn nhất
SELECT *
FROM sinh_vien
WHERE Age = [SELECT MAX[Age] FROM sinh_vien];
Sau khi thực thi, MySQL trả về một bảng kết quả như sau:
Full_nameGenderAgeCityTrinh Giao KimNam44Bac LieuMột mảng là một cấu trúc dữ liệu mà lưu giữ một hoặc nhiều kiểu giá trị giống nhau trong một giá trị đơn. Nói đơn giản thì mảng như các dòng xe ô tô, từng dòng xe mang từng giá trị riêng [value] và được đánh số bằng thứ tự phổ biến trên thị trường [key].
2. Cú pháp
Để tạo mảng chúng ta sử dụng hàm
0 trong PHP [Từ PHP 5.4 trở lên bạn chỉ cần viết giá trị trong cặp dấu [ ] cũng được]array[
key => value,
key2 => value2,
key3 => value3,
...
]
Ví dụ:
Kết quả bạn có như sau:
array[3] {
[0]=> string[5] "Volvo"
[1]=> string[3] "BMW"
[2]=> string[6] "Toyota"
}
Như ví dụ trên chúng ta có mảng 3 giá trị. Trong đó nó có 3 key đánh số từ [0] đến [2] cho 3 giá trị [dòng xe] tương ứng. Mỗi giá trị bên trong nó sẽ hiển thị kèm theo tên kiểu dữ liệu. Như vậy bạn có thể hiểu, Volvo, BMW, Toyota là giá trị trong mảng
1 mà ta
2 ra. Các key nó sẽ tự động gán khi khởi tạo mảng. Để lấy giá trị trong mảng như ý muốn của mình, chúng ta sẽ lấy ra bằng cách viết tên biến kèm theo key cần lấy giá trị như sau:
3. Các loại mảng
3.1. Mảng số nguyên
Một mảng có chỉ mục ở dạng số. Giá trị được lưu trữ và truy cập tuyến tính. VD:
KQ:
Giá trị phần tử mảng là 1
Giá trị phần tử mảng là 2
Giá trị phần tử mảng là 3
Giá trị phần tử mảng là 4
Giá trị phần tử mảng là 5
Giá trị phần tử mảng là Volvo
Giá trị phần tử mảng là BMW
Giá trị phần tử mảng là Toyota
Giá trị phần tử mảng là Mazda
Giá trị phần tử mảng là Kia
3.2. Mảng liên hợp
Một mảng với chỉ mục ở dạng chuỗi kí tự. Mảng này lưu trữ các giá trị phần tử bằng sự kết hợp với các giá trị key thay vì trong một trật tự chỉ mục tuyến tính nghiêm ngặt như mảng số nguyên. Các mảng liên hợp là khá giống với các mảng số nguyên về tính năng, nhưng chúng khác nhau về chỉ mục. Mảng liên hợp sẽ có chỉ mục ở dạng chuỗi để mà bạn có thể thiết lập một liên kết mạnh giữa
3 và
4.VD:
Kq:
Mức độ phổ biến của Volvo là 3
Mức độ phổ biến của BMW là 2
Mức độ phổ biến của Toyota là 1
Mức độ phổ biến của Volvo là low
Mức độ phổ biến của BMW là medium
Mức độ phổ biến của Toyota là high
3.3. Mảng đa chiều
Một mảng chứa một hoặc nhiều mảng và các giá trị được truy cập bằng cách sử dụng nhiều chỉ mục có nghĩa là mỗi phần tử cũng có thể là một mảng. Và mỗi phần tử trong một mảng phụ có thể là một mảng, và cứ tiếp tục như vậy. Các giá trị trong mảng đa dạng được truy cập bởi sử dụng nhiều chỉ mục. VD:
KQ:
array[
key => value,
key2 => value2,
key3 => value3,
...
]
04. Phép lặp trong mảng
4.1. Phép lặp mảng tuần tự:
Cú pháp:
array[
key => value,
key2 => value2,
key3 => value3,
...
]
1Trong đó
array[
key => value,
key2 => value2,
key3 => value3,
...
]
7 là mảng mà ta muốn thực thi việc lặp dữ liệu,
8 là một biến vốn tạm thời chứa mỗi khóa, và
9 là một biến vốn tạm thời chữa mỗi giá trị. Ví dụ: