ms 액세스 2007 데이터베이스 쿼리에서 변수를 선언하고 설정하려고합니다. 실행 후 정수 또는 문자열 유형이므로 2 개의 데이터베이스 쿼리 결과를 2 개의 변수에 저장하려고합니다. 변수를 선언하고 설정하는 방법을 알고 싶습니다.ms 액세스 2007 쿼리에서 변수를 선언하고 설정하는 방법
SQL 서버 상당이
declare @var1 varchar(50)
set @var1 = 'select * from table'
ms 액세스 2007 데이터베이스 쿼리에서 변수를 선언하고 설정하려고합니다. 실행 후 정수 또는 문자열 유형이므로 2 개의 데이터베이스 쿼리 결과를 2 개의 변수에 저장하려고합니다. 변수를 선언하고 설정하는 방법을 알고 싶습니다.ms 액세스 2007 쿼리에서 변수를 선언하고 설정하는 방법
SQL 서버 상당이
declare @var1 varchar(50)
set @var1 = 'select * from table'
같은 제트/ACE SQL에서이 구문를 지원하지 않습니다 것입니다. 최종 목표가 무엇인지에 따라 이러한 유형의 기능을 위해 VBA (아래 제공된 샘플) 또는 하위 쿼리 (@ Thomas의 솔루션 에서처럼) 중 하나를 사용해야합니다. (Allen Browne's website에서 적응) 다음과 같은 라인을 따라
뭔가 : "쿼리에"당신이 다음이 까다 롭습니다 "고 VBA 루틴에 의지하지 않고"을 의미하여
Function DAORecordsetExample()
'Purpose: How to open a recordset and loop through the records.'
'Note: Requires a table named MyTable, with a field named MyField.'
Dim rs As DAO.Recordset
Dim strSql As String
strSql = "SELECT MyField FROM MyTable;"
Set rs = CurrentDb.OpenRecordset(strSql)
Do While Not rs.EOF
Debug.Print rs!MyField
rs.MoveNext
Loop
rs.Close
Set rs = Nothing
End Function
합니다. 가장 간단한 솔루션은 기본 쿼리에서 사용하는 단일 쿼리입니다.
Select SomeCol As Var1
, (Select SomeOtherCol
From SomeOtherTable) As Var2
From SomeTable
은 위의 서브 쿼리가 하나의 행을 반환한다고 가정하고 우리가 VAR1의 가치에 대한 행을 얻을 : 값을 가져옵니다 쿼리처럼 보일 수 있습니다. 이 보장되지 않은 경우, 당신은 얻을과 같이 하나 개의 행을 반환 보장 외부 쿼리를 사용하고자하는 것 :
Select (Select SomeCol
From SomeTable) As Var1
, (Select SomeOtherCol
From SomeOtherTable) As Var2
From AnotherTableWithAtLeastOneRow
Where Col = "SomeValueToGetOneRow"
당신은 쿼리 정의로 그것을 저장 한 다음 메인 쿼리를 사용할 수 있습니다.