나는 별개의 선택하려고하지만선택 별개의 행
SELECT Distinct `table1`.`myID` AS `myID`,
`table1`.`TypeID` AS `TypeID`,
내가 놓친 거지 어떤 일이 있는가 작동하지 무엇입니까?
나는 별개의 선택하려고하지만선택 별개의 행
SELECT Distinct `table1`.`myID` AS `myID`,
`table1`.`TypeID` AS `TypeID`,
내가 놓친 거지 어떤 일이 있는가 작동하지 무엇입니까?
Distinct는 단일 필드에서 작동하지 않으며 전체 행에서 작동합니다. 결과에는 고유 한 행만 포함됩니다. 즉 모든 입력란이 동일한 행만 삭제됩니다.
select table1.myID, min(table1.TypeID) as TypeId
from ...
group by table1.myID
이것은 myID
에 대해서는 다른 값으로 당신에게 결과를 줄 것이다, 그러나 당신이 당신 그룹화되지 않은 필드해야한다 : 특정 필드에 고유 한 값을 원하는 경우에
, 당신은 group by
사용할 수 있습니다 얻을 값을 지정하십시오. 이를 위해 min
및 max
과 같은 집계를 사용합니다. MySQL은 집계가없는 필드를 지정할 수있게하지만 처음 나타나는 값을 선택하게됩니다 (첫 번째 값이 아닐 수도 있습니다). 당신이 원하는 것 무엇을 할
단일 레코드에 대해 수행 할 작업은 무엇입니까? – Autolycus
한 가지 방법은 다음과 같습니다 당신은 함께 가고있는 값을 알 수 없습니다
myID 1
myID 2
myID 3
TypeID 101
TypeID 201
TypeID 301
: 다음과 같이 각 열에 대해 당신에게 고유 한 값을 줄 것이다
SELECT Distinct 'myID' as IDType, `table1`.`myID` AS ID
UNION
SELECT DISTINCT 'TypeID' as IDType, `table1`.`TypeID` AS `ID`
각 열에 어떤 값이 표시되는지 알 수 있습니다.
열에 대해서만 구분을 사용할 수 없습니다.
하위 쿼리를 사용하여 수행하려는 작업을 수행 할 수 있습니다.
무엇이 효과가 없으며 원하는 결과 대신 어떤 결과가 나타 납니까? 나는 의도하지 않은 방식으로 뚜렷한 것을 사용하려고하고 있다고 생각합니다. 둘 이상의 열을 선택하는 경우 결과 집합에는 각 열에 고유 한 값이 아닌 고유 한 TUPLES (쌍, 세 쌍 등) 값이 포함됩니다 ... –