Using Select Distinct On An Already Created DataTable Object?
Nov 16, 2010
I have an already created DataTable object which i am using for my girdview (asp.net) i also need to bind a column of that object to a DropDownList. The datatable has the correct details in the column but the column contains more that 1 of the same name in the column - hence I would love to just do some kind of SELECT DISTINCT on the datatable and copy it to a new datatable for use with binding the dropdown.
This would allow me to save resources by making another trip to the database.
Here is an example, the current datatable has a column called items and in this column has the following entries
1
1
1
1
5
5
6
And of course i need only unique items for binding to my dropdown, hence i need the following data
1
5
6
Of course i don't want to change the original datatable object but rather make a copy of it will the new details.
I would like to select a distinct query based on three fields and display the rest of the fields. For example,
I have firstname, lastname, address, city, state and zip, but I only want to use the distinct on these fields first and last name. However when i use the distinct function I get a distinct on all the selected rows. I just want to distinct firstname and lastname and display the other fields. for example,
Mary Smith New York Mary Smithy New York Mary Smith Maine
I would like the result to be:
Mary Smith New York Mary Smithy New York
I don't care about Mary Smith Maine, because i am only using the distinct for "Mary Smith" firstname and last name and showing the city.
I am using C# + VSTS 2008 + .Net + ASP.Net + IIS 7.0 + ADO.Net + SQL Server 2008. I have a ADO.Net datatable object, and I want to filter out duplicate/similar records (in my specific rule to judge whether records are duplicate/similar -- if record/row has the same value for a string column, I will treat them as duplicate/similar records), and only keep one of such duplicate/similar records.
The output needs to be a datatable, may output the same datatable object if filter operation could be operated on the same datatable object.
I have a datatable which has been dynamically generated from FoxPro tables using a UNION Select statement. e.g.
SELECT * FROM x UNION SELECT * FROM y UNION SELECT * FROM Z ORDER By v_alue1
This produces a datatable with about 100 rows, each containing many fields, one of which is c_olor. From this datatable, I would like to select the distinct colors and then output in a dropdown.
I have a public class Color which just has one property which I can then use as the DataTextField and DataValueField for the dropdownlist
[code]...
However this never results in the distinct colors.
I have searched and searched for what I am looking for, and this seems to be one of the methods to produce a distinct set of results, but this and the others do not work.
My reasoning behind getting the colors this way, is that I need to get various other distinct values from the same UNION SELECT datasource, so would just do one DB call, cache the results, and then just used this cached datasource to retrieve all my distinct values.
This is something I can easily do in SQL, but I'm pretty new to LINQ and haven't been able to find an answer online.
I need a LINQ query that returns two values; the first a distinct value and the second the count of the first value. This is filtered by a parameter. Here is my table:
How can i select all columns of table but to distinct by one column? i am tryin to figure it out without success, i know how to make distinct (select distinct column from table, but i need all the values from the table and to distinct by Delcompany.
I'm creating a static helper class for web services I'm writing. I'm tapping into the API of Telligent and therefore creating these Telligent "service" objects that allow me to do things with the platform. For example, I'm creating a MembershipSerice object in my helper class so I can do membership stuff with the same object. In my helper class I have a property with a getter that creates a new one of these objects:
private static MembershipService _MembershipService { get return new MembershipService(path, usr, pwd); [code]...
Dim dt As New DataTable Dim da As New SqlDataAdapter(s, c)
c.Open() if Not IsNothing(da) Then da.Fill(dt)
[code]...
When I call da.fill I am inserting all records from my query. I was then hoping to filter them to display only those where the GroupingID is equal to 0. When I run the above code. I am presented with all the data, the filter did not work. Please can you tell me how to get this working correctly.
I have a dropdownlist attached to a cell when edit is selected. I am using the following code to populate the drop down list with the value that is on the row.
dlBU.Items.FindByValue((e.Row.FindControl("lblBU") as Label).Text).Selected = true;
This works famously when I have a value in the cell. It fails when the cell has not yet been populated. Is there an if then clause that if the value of e.Row.findcontrol("lblBU") is null no default value?
I need to do a total on one of the fields from the datatable but im not sure how to do it as i am not defining the itemtemplate for the column as its dynamic
I have an unbound gridview which is bound to a dynamically created datatable during the pageload event of my page. A simple matrix with x columns and y rows. I need all the cells to be the same size. I'll display my code below.
I have records in the datatable which I have retreived from xml file.
Dim docDataSet As New DataSet Dim docReader As New XmlDocument Dim xnl As XmlNodeList docReader.Load("UserProfile.xml") xnl = docReader.SelectNodes("/Users/user") For Each xn As XmlNode In xnl Dim xr As New XmlNodeReader(xn) docDataSet.ReadXml(xr) Next xn Dim Dm_table As DataTable = ds.tables(0)
Now what I want to do is execute a select query like below:
Select * from user where userid in (select ID from Dm_table)
Retreive the records from the User table based on the ID's in the datatable.
I have a dataset generated from xml from a web service.Data needs to be sorted by date order descending, I cannot get the web service changed so thought I'd try:
Code: repeater1.DataSource = dsCombinedBlock.Tables(2).Select("Status < 3 and status <> 99", "DateReceived desc") However the dates are treated as a string so the results look like