SQL trong MS Access


Nối chuỗi trong câu lệnh SQL: sử dụng &.

Visual Basic:
Dim dt As New DataTable
comm = New OleDb.OleDbCommand("SELECT DISTINCT tb1.monthdate FROM " &
"(SELECT month(mrp_receiveddate) & '-' & year(mrp_receiveddate) AS monthdate FROM table_MRP " &
" WHERE mrp_status='CLOSED' AND mrp_receiveddate is not null " &
")AS tb1 ", conn)
dt.Load(comm.ExecuteReader)

Giải thích:

  • month(mrp_receiveddate) & '-' & year(mrp_receiveddate) trả về kết quả tháng-năm, thí dụ: 11-2016
  • SELECT DISTINCT tb1.monthdate cho kết quả là giá trị duy nhất của monthdate
  • Câu lệnh SQL trên tìm giá trị duy nhất ngày-tháng của trường mrp_receiveddate

Tìm các bản ghi trong một table không nằm trong table khác sử dụng LEFT JOIN.

SELECT table1.name, table1.address
FROM table1
LEFT JOIN table2 ON table2.name = table1.name
WHERE table2.name IS NULL

Giải thích:

  • Câu lệnh trả về name và address trong table1 mà giá trị name không có trong table2.
  • Sử dụng LEFT JOIN và WHERE IS NULL.
TOP