Distinct

Databaser & SQL

8 svar · 403 visningar · startad av skarbratt

Medlem sedan juli 2000325 inlägg
Trådstart#1

Tabelen ser ut så här:

IDNum Session
1     0
2     0
3     2
4     1
5     2
6     0

Nu vill jag få ut alla datan (nästan) Jag vill nämligen skriva ut alla olika Session dvs när jag lista vill jag bara få ut en lista som ser ut så här:

0
1
2

INTE
0
0
2
1
2
0

Hur gör jag?

Medlem sedan juni 200032 967 inlägg
#2
select distinct session from tabell order by session asc

mvh

Medlem sedan juli 2000325 inlägg
#3

Bra, men jag vill kunna skriva ut IDNum också och det går inte med den koden och lägger jag till: ", IDNum" efter session blir det ju inte rätt heller...

SQL = "SELECT DISTINCT session, IDNum FROM logg ORDER BY session asc;"

Medlem sedan juni 200032 967 inlägg
#4

vilket id-nummer vill du skriva ut då? du kan ju ha massor per session?

Medlem sedan juli 2000325 inlägg
#5

Den första...

Medlem sedan juli 2000325 inlägg
#6

Löste det

	<%
		SQL = "SELECT DISTINCT session FROM logg ORDER BY session asc;"
		Set RS=con1.execute(SQL,,adCmdText)
		Do While Not RS.EOF
		sessionID 	= RS("Session")
		
		SQL = "SELECT * FROM logg WHERE session = "&sessionID&";"
		Set RS2=con1.execute(SQL,,adCmdText)
		IDNum 			= RS2("IDNum")
		RS2.Close
	%>
	<% = IDNum %> - <% = sessionID %><BR>
	
	<%
		RS.MoveNext
		Loop
		RS.Close
	%>
Medlem sedan juli 2000325 inlägg
#7

Oj nu fassande jag igen.

Går det att göra så att det går att sortera "ORDER BY time asc" istället för "ORDER BY session asc"?

	<%
		d = date
		SQL = "SELECT DISTINCT session FROM logg WHERE date = '"&d&"' ORDER BY session asc;"
		'Response.Write(sql)
		Set RS=con1.execute(SQL,,adCmdText)
		Do While Not RS.EOF
		sessionID 	= RS("Session")
		
		SQL = "SELECT * FROM logg WHERE session = "&sessionID&";"
		Set RS2=con1.execute(SQL,,adCmdText)
		IDNum 		= RS2("IDNum")
		Ptime			= RS2("time")
		RS2.Close
	%>
	
	<A HREF="default.asp?action=listone&IDNum=<%=IDNum%>"><% = sessionID %></A> (<I><%=Ptime%></I> )<BR> 
	
	<%
		Response.Flush
		i = i + 1
		RS.MoveNext
		Loop
		RS.Close
	%>
Medlem sedan dec. 19996 721 inlägg
#8

Nja, en ORDER-kolumn måste finnas med i SELECT-listan, om man använder DISTINCT, annars blir det inte DISTINCT. Tyvärr. Skulle själv vilja göra så ibland.

Medlem sedan apr. 20003 971 inlägg
#9

Hur fungerar DISTINCT? För mig ger det samma resultat oavsett om jag använder DISTINCT eller ej. Jag har inte hittat något vettigt i MySQL-manualen heller(http://www.mysql.com/documentation/mysql/commented/manual.php?section=SELECT).

254 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)