SELECT * FROM TABLE WHERE 1 > 2 คือ อะไร
เวลาทำงานหลายคนอาจจะเจอ SQL แปลกๆ เช่น
SELECT * FROM INVESTTX WHERE 1 > 2
Q: WHERE 1 > 2 คือ อะไร ?
A: คือ การ SELECT ข้อมูล RECORD เปล่าขึ้นมา เพื่ออัปเดต หรือ ทำเป็น TEMP Table เพื่อการใช้งานต่อไป
ตัวอย่างการใช้งาน
- SELECT RECORD เปล่าขึ้นมา Update Recordset ใน VB6
Private Function AddDataRecord() As Boolean
Dim SQL As String, ladr As ADODB.RecorDset
On Error GoTo LineError
'Create empty recordset for add data record
SQL = "SELECT * FROM PRODUCT WHERE 1 > 2"
Set ladr = New ADODB.RecorDset
ladr.Open SQL, gclsDBConnect.Connection, adOpenKeyset, adLockPessimistic
'Add Data Record
With ladr
.AddNew
.Fields("PROD_ID").Value = 002
.Fields("PROD_NAME").Value = "DS_PHOTOSHOP Management Software"
.Fields("PROD_PRICE").Value = 399
.Fields("PROD_QTY").Value = 99
.Update
End With
AddDataRecord = True
LineExit:
Set ladr = Nothing
Exit Function
LineError:
MsgBox Err.Number & ":" & Err.Description & newline & "in " & Err.Source, vbInformation + vbOKOnly
AddDataRecord = False
Resume LineExit
End Function- สร้าง Table ขึ้นมาใหม่ เช่น
SELECT * INTO Sales.NewCurrency
FROM Sales.Currency
WHERE 1 > 2
--(0 row(s) affected)
/* คำสั่งที่เทียบเท่า
CREATE TABLE [Sales].[NewCurrency](
[CurrencyCode] [nchar](3) NOT NULL,
[Name] [dbo].[Name] NOT NULL,
[ModifiedDate] [datetime] NOT NULL
) ON [PRIMARY]
*/Discover more from naiwaen@DebuggingSoft
Subscribe to get the latest posts sent to your email.



