Mừng Sinh Nhật GPE 11: sáng 25/6 Hà Nội; 1/7 Huế/Đà Nẵng; Trưa 2/7 TPHCM

Hỏi GROUP BY & ORDER BY trong câu lệnh SELECT

Thảo luận trong 'Ứng dụng Quản trị cơ sở dữ liệu' bắt đầu bởi Tường_Vi, 25 Tháng mười 2012.

  1. Tường_Vi

    Tường_Vi Thành viên tiêu biểu

    ví dụ: sách ADO của Mr DUyệt
    Bây giờ tôi muốn tính tổng các sản phẩm sản xuất chỉ có trong bảng tbMaSanPham thì sao?
    Chúng ta viết câu lệnh SQL sau

    PHP:
    SELECT MSPMoTaSUM(SL) AS [TONG]
     
    FROM tbSanLuongSX 
    WHERE MSP IN 
    (SELECT DISTINCT MSP FROM tbMaSanPham
    GROUP BY MSPMoTa 
    ORDER BY NgaySX
    ;
    Trong ví dụ trên em in hỏi ý nghĩa của 02 dòng này dùng để làm gì?

    GROUP BY MSP, MoTa ORDER BY NgaySX;
     
  2. Hoàng Trọng Nghĩa

    Hoàng Trọng Nghĩa .: Never Stand Still :. Staff Member

    Group by có nghĩa lọc không trùng (nhóm lại các ô trùng)
    Order by có nghĩa là sort (từ A>Z)

    SELECT MSP, MoTa, SUM(SL) AS [TONG]
    FROM tbSanLuongSX
    WHERE MSP IN
    (SELECT DISTINCT MSP FROM tbMaSanPham)
    GROUP BY MSP, MoTa
    ORDER BY NgaySX
    ;



    Câu lệnh trên có nghĩa là

    Lọc không trùng field MSP và field MoTa

    Sắp xếp (A>Z) theo field NgaySX

    Nếu sắp xếp từ Z>A thì ODER BY FIELD_NAME DESC

    (ASC | DESC)

    Nếu không có ASC/ DESC thì ngầm hiều nó là ASC nhé!
     
    Lần chỉnh sửa cuối: 25 Tháng mười 2012
  3. toanthangnhcs

    toanthangnhcs Thành viên mới

    Nói nôm na là Group by để nhóm các row có cùng tiêu chí khi group
    còn order by là mình sắp sếp nó theo thứ tự tăng dần
     
  4. Nguyễn Duy Tuân

    Nguyễn Duy Tuân Nghị Hách

    Không chuẩn. Bạn nghiên cứu thêm rồi trả lời cho chính xác nhé.
     

Chia sẻ trang này