VS 2008 - Using Nested IF Statements In A SQL Query?
Jan 13, 2011
I have a question about using nested IF statements in a SQL query. I have a select statement that calculates a semester grade -- Dim sqlStr As String = "SELECT 'XXX-XX-' + right(socSecNumber,4) As [Student SSN], Round((firstExam + secondExam +(2*finalExam))/4, 0) AS [Semester Average] FROM Grades that I am displaying the results in a datagridview. I can successfully display the masked social security number and the Semester Average but I also need to convert the Semester Average to a letter grade to display in a newly created column for Grade. Can this somehow be done with nested If or Case statements within the SQL statement or is there a way to pass the Semester Average information as a variable to a nested vb If statement? Basically, I am needing to know how to display the letter grade to the datagridview using this criteria:
I want to write two nested loops and inside them "two if statements" when I write an Else statement which has a messagebox saying that ID is not found.. it repeated many times depending on the for loops. I only want to be displayed once !!! but when I wrote my code like this (using exit sub), the message appears when the condition is right and appears when the condition is wrong. I tried to move this statement somewhere else but still I have problems with it.
With EMPDataSet For I = 0 To .Personal.Rows.Count - 1 For j = 0 To .Work.Rows.Count - 1 If EMP_CPR = .Personal.Rows(I).Item("CPR") Then txtName.Text = .Personal.Rows(I).Item("Full_Name") [Code] .....
I'm using a series of nested if/then/else statements to make sure a user enters information into each text box or chooses a radio button. What would i use to say if no text is entered in textbox1, then ... also what would i use to make a sure the user choose one or the other radio button? for example i also have a combo box, i used "If SubjectComboBox.SelectedIndex <> -1" for the if statement.
I am working in a proprietary language based on basic on a measuring machine. I delibritly set the first two checks to fail for testing purposes. The first set of ifs for size X works great. When the code is run and it gets to Size_Y, if the operator picks "no I don't want to remeasure" (returning a 7) the code jumps all the way to the last end if. I suspect I have improperly nested my Ifthens, but I can't see it.
I am working in a proprietary language based on basic on a measuring machine. I delibritly set the first two checks to fail for testing purposes. The first set of ifs for size X works great. When the code is run and it gets to Size_Y, if the operator picks "no I don't want to remeasure" (returning a 7) the code jumps all the way to the last end if. I suspect I have imped this
I have a List Table (lstTable) that is on the same form that I am trying to fill in with information from a public structure (ELEM_DATA). I understand nested with statements will work if it is within the same scope but how can I do this with example 2 below:
Example 1:
With me.lstTable.Items(RECORD) .SubItems(1).text = ELEM_DATA(RECORD).name .SubItems(2).text = ELEM_DATA(RECORD).number end with
[code]....
I didnt know if it is possible or if it would be as simple as changing (.name) to something else.
Now I have a sub to validate a bunch of textboxes and combo boxes.I previously used many IF statements to validate and pop up different messageboxes and Exit Sub in every IF statement.But I heard that too many Exits will decrease the efficiency and they were not recommended to use. Instead, nested IF is better because it will let the process naturally go to the end.Then I found out that if I use nested IF,it will be hard to read, since messageboxes are all separated from conditions.
I intended to do another SQL query inside here and retrieve data from another table by using the "category_id".I know the problems that asp.net required me to close the data reader before proceed to another query. But is there any solution for me to do another query and open another data reader within the opening data reader? [code]
I'm writting a graph algorithm and I'm almost there...My algorithm stores several edge objects in a collection of edges, representing a path from initial vertex to final vertex.hus, there should be also several paths between those vertexes (several collections of edge type), stored in another collection (in my class, callded "collswap").Each edge is an object which have two vertexes: initial (v) and final (w), in this way:
dim manhattan as new vertex dim brooklyn as new vertex dim statenIsland as new vertex
I have the following SQL query to return all Customers who have no OrderLines with no Parts assigned - i.e. I only want the customers within which every order line of every order has no parts assigned - (in the actual problem I am dealing with a different domain but have translated to customers/orders to illustrate the problem)
SELECT c.Customer_PK FROM Customers c INNER JOIN Orders o[code].....
This works but generates less than optimal SQL - it is doing a subquery for Count on each row of the customers query rather than using Group By and Having. I tried making the LINQ Group By syntax work but it kept putting the filter as a WHERE not a HAVING clause.Edit in response to Answers below: I am accepting JamieSee's answer as it addresses the stated problem, even though it does not produce the GROUP BY HAVING query I originally had.I am a VB developer so I have had a crack translating your code to VB, this is the closest I got to but it does not quite produce the desired output:
Dim qry = From c In context.Customers Group Join o In context.Orders On c.Customer_PK Equals o.Customer_FK Into joinedOrders = Group[cod].....
The problem I had is that I have to push "jl" into the Group By "Key" so I can reference it from the Where clause, otherwise the compiler cannot see that variable or any of the other variables appearing before the Group By clause.With the filter as specified I get all customers where at least one order has lines with no parts rather than only customers with no parts in any order.
I have a method in a webservice that has parameter with which users can decide how they want to order their results. This is a List(Of String) with the names of the fields in the order they want to sort them. I know I can normally order on multiple columns by doing the following
Dim test = Bars.OrderBy(Function(x) x.Foo) _ .ThenBy(Function(x) x.Bar) _ .ThenBy(Function(x) x.Test)
However in this case this won't work since I can't chain the ThenBy function because I'm adding the sorting orders in a loop. To use ThenBy I need an IOrderedQueryable collection. This is how I would want it to work
Dim sortColumns = {"Foo", "Bar", "Test"} Dim query = From b in Bars For each column in sortColumns Select Case column Case "Foo" query = query.Orderby(Function(x) x.Foo) [Code] .....
I have these objects:[code]Using LINQ I need to take a List(Of MakeInfo) and a List(Of ModelInfo) and aggregate the StockInfo from ModelInfo into the List(Of MakeInfo).So for each MakeInfo I will have a total count of all stock where MakeInfo.Name = ModelInfo.Make, and also a minimum price.I think it's going to be something like this, but I'm having trouble accessing the nested object and not sure if it's going to be possible with a single query.[code]
Can someone give me a site to a tutorial that will help me write a program that will generate a pattern using do while, if else statements,and do until statements. I have been using google but I can't find anything. I need to generate patterns a certain size 6 by 6 or similar such as something like a checkerboard but where the ^ symbols is there a suppose to be a blank space..
Well I hope this is the right section since I can't figure out where to post for vb 2008 express. Anyway I'm trying to get my program to search for a html element and if it finds it, do something. I just started programming vb yesturday and have little programming knowledge. I'm learning as I go and thats how I learn.
Private Sub Connect_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Connect.Click WebBrowser1.Navigate(AdressBox.Text) Dim Element As HtmlElementCollection = WebBrowser1.Document.GetElementsByTagName(tagName:="login") ' If (Element) Then ' End If End Sub
I keep getting a null reference error no matter what combinations I try. I want it to search for the login name and if there is one then do the login procedure I have setup. I want to do this for a image later but I need to learn this first. I know that this tag name = login and is NOT a id.
I need to write a do until statement. 2 of them actually. 1st one records all of the income and then one that records all of the expense. Then they need to be add to figure a profit or a loss.
I have an export file containing the sql code to create and populate a table of a database. There is a way (using the visual studio 2008 using the data connection on the server explorer) to pass to the created table comething like this: [code]I have seen that this is possible only if i submit just one value like this:INSERT INTO province (id,codice_regione,codice,nome,sigla) VALUES(1, 1, 1, 'Torino', 'TO');But i would like to create all the record of the table running the sql script just one... i have a table of over 50000 record..
I'm very new to programming and have the following question:When using the set statement in properties we have to declare a variable outside the property which holds the data for the get statement. How can i make this variable not visible to other classes. In the example below i don't want other classes to be able to see "m_area, a and b" when an instance of Ellipse is created.
I'm comparing a temporary table to an another table, to check for changes in the cells. The way I'm doing it, is that I'm using three loops; one to loop trough the temporary, one to loop trough the other table and a last one to loop trough each column. Here's the
vb.net For Each row As DataRowView In View For Each drow As DataRowView In view2
[Code]....
"emitid" is the column I use as a reference to be sure that I'm comparing the correct rows, and the column order will always be the same in both tables.
I'm sure I can work out several ways to do this but I wonder if anyone has a neat trick for creating nested folders.For example, if I have a string containing "c:userspauldocsmystuff" I want to create that same folder structure on another drive. I don't want to copy any files, just create the folder structure i.e. "k:userspauldocsmystuff"
I am working on arrays but i need to do a sql update statement. Contents of the array are also part a primary key in my table.How do I do an update using the array for example if my array is room names and my other table values are start date, end date and campus ID.
I am writing an application that will be used to extract information from any one of three different database applications, depending on the option selected. I would also like it to be possible to run it against one of several environments (e.g. development, test or live).
I plan to hold the relevant logon details (in encrypted form, of course) in the app.config file, with the appropriate details selected depending on the environment and application. Rather than have each option hard-coded into a Select Case statement, I want to be able to nest the variables in the app.config. I had envisaged a section of the config file looking like this:
code For Each item As Reflection.FieldInfo In GetType(NameSpace.ClassWithNestedClasses).GetFields rtfAppend(item.Name & ":" & Tab & item.GetValue(Me)) Next For Each item As Reflection.PropertyInfo In GetType(NameSpace.ClassWithNestedClasses).GetProperties()
[code]...
which gets me the simple string vars and properties of my top class, but how can i apply this to loop through all sub classes and get there vars and props?
I have to deploy my VB.NET application developed in VB.NET and Visual Studio 2005. The customer is using SQL Server 2008, while the application is being built against SQL Server 2000.I received the following error against SQL Server 2008:An explicit value for identity column in 'Outgoing_Invoice' table can only be specified when column list is used and Identity Insert is ON.Here is my query for inserting data in two tables:
Dim cmd1 As New SqlCommand("Insert into Stock values(@invoice_no, @gate_pass, @exp_no, @clm_no, @category, @item_name, @weight, @units_case, 0, 0, @crtns_removed, @pieces_removed, 0, 0, @date_added, @date_removed, @inc_total_price, @out_total_price,[code]....
The error message is shows at cmd1.executenonquery. Both these tables Stock and Outgoing_Invoice have an identity column labelled serial before @invoice.The problem only arose when insert was tried on SQL Server 2008. When run against SQL Server 2000, it works as expected.What can be the possible reason for this issue and how can it be resolved?
I am just starting to learn the visual basic language so i am trying to make a simple application where a user can put in it's first and last name or else the application exists.
I manage to do this fine untill i get to the point of ending one if statement and starting another in the same button..
(in the form i have button1, button2, label1, label2. Button2 is only a "quit" button)
Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
[Code]....
What happens when i run this is that i can put in the first name but then when i click yes the application closes.
I need to update more than one DataAdapters, so I used the
Dim sqlcmdbldUser As New OleDbCommandBuilder(dtaadpUser) Dim sqlcmdbldPoints As New OleDbCommandBuilder(dtaadpPoints)
But only one of them works, the second one brings up errors if I try to update the DataAdapter. Is there a way of using and updating multiple data adapters?