Search Results

Search found 31931 results on 1278 pages for 'sql statement'.

Page 671/1278 | < Previous Page | 667 668 669 670 671 672 673 674 675 676 677 678  | Next Page >

  • Why is SQLite3 using covering indices instead of the indices I created?

    - by Geoff
    I have an extremely large database (contacts has ~3 billion entries, people has ~280 million entries, and the other tables have a negligible number of entries). Most other queries I've run are really fast. However, I've encountered a more complicated query that's really slow. I'm wondering if there's any way to speed this up. First of all, here is my schema: CREATE TABLE activities (id INTEGER PRIMARY KEY, name TEXT NOT NULL); CREATE TABLE contacts ( id INTEGER PRIMARY KEY, person1_id INTEGER NOT NULL, person2_id INTEGER NOT NULL, duration REAL NOT NULL, -- hours activity_id INTEGER NOT NULL -- FOREIGN_KEY(person1_id) REFERENCES people(id), -- FOREIGN_KEY(person2_id) REFERENCES people(id) ); CREATE TABLE people ( id INTEGER PRIMARY KEY, state_id INTEGER NOT NULL, county_id INTEGER NOT NULL, age INTEGER NOT NULL, gender TEXT NOT NULL, -- M or F income INTEGER NOT NULL -- FOREIGN_KEY(state_id) REFERENCES states(id) ); CREATE TABLE states ( id INTEGER PRIMARY KEY, name TEXT NOT NULL, abbreviation TEXT NOT NULL ); CREATE INDEX activities_name_index on activities(name); CREATE INDEX contacts_activity_id_index on contacts(activity_id); CREATE INDEX contacts_duration_index on contacts(duration); CREATE INDEX contacts_person1_id_index on contacts(person1_id); CREATE INDEX contacts_person2_id_index on contacts(person2_id); CREATE INDEX people_age_index on people(age); CREATE INDEX people_county_id_index on people(county_id); CREATE INDEX people_gender_index on people(gender); CREATE INDEX people_income_index on people(income); CREATE INDEX people_state_id_index on people(state_id); CREATE INDEX states_abbreviation_index on states(abbreviation); CREATE INDEX states_name_index on states(name); Note that I've created an index on every column in the database. I don't care about the size of the database; speed is all I care about. Here's an example of a query that, as expected, runs almost instantly: SELECT count(*) FROM people, states WHERE people.state_id=states.id and states.abbreviation='IA'; Here's the troublesome query: SELECT * FROM contacts WHERE rowid IN (SELECT contacts.rowid FROM contacts, people, states WHERE contacts.person1_id=people.id AND people.state_id=states.id AND states.name='Kansas' INTERSECT SELECT contacts.rowid FROM contacts, people, states WHERE contacts.person2_id=people.id AND people.state_id=states.id AND states.name='Missouri'); Now, what I think would happen is that each subquery would use each relevant index I've created to speed this up. However, when I show the query plan, I see this: sqlite> EXPLAIN QUERY PLAN SELECT * FROM contacts WHERE rowid IN (SELECT contacts.rowid FROM contacts, people, states WHERE contacts.person1_id=people.id AND people.state_id=states.id AND states.name='Kansas' INTERSECT SELECT contacts.rowid FROM contacts, people, states WHERE contacts.person2_id=people.id AND people.state_id=states.id AND states.name='Missouri'); 0|0|0|SEARCH TABLE contacts USING INTEGER PRIMARY KEY (rowid=?) (~25 rows) 0|0|0|EXECUTE LIST SUBQUERY 1 2|0|2|SEARCH TABLE states USING COVERING INDEX states_name_index (name=?) (~1 rows) 2|1|1|SEARCH TABLE people USING COVERING INDEX people_state_id_index (state_id=?) (~5569556 rows) 2|2|0|SEARCH TABLE contacts USING COVERING INDEX contacts_person1_id_index (person1_id=?) (~12 rows) 3|0|2|SEARCH TABLE states USING COVERING INDEX states_name_index (name=?) (~1 rows) 3|1|1|SEARCH TABLE people USING COVERING INDEX people_state_id_index (state_id=?) (~5569556 rows) 3|2|0|SEARCH TABLE contacts USING COVERING INDEX contacts_person2_id_index (person2_id=?) (~12 rows) 1|0|0|COMPOUND SUBQUERIES 2 AND 3 USING TEMP B-TREE (INTERSECT) In fact, if I show the query plan for the first query I posted, I get this: sqlite> EXPLAIN QUERY PLAN SELECT count(*) FROM people, states WHERE people.state_id=states.id and states.abbreviation='IA'; 0|0|1|SEARCH TABLE states USING COVERING INDEX states_abbreviation_index (abbreviation=?) (~1 rows) 0|1|0|SEARCH TABLE people USING COVERING INDEX people_state_id_index (state_id=?) (~5569556 rows) Why is SQLite using covering indices instead of the indices I created? Shouldn't the search in the people table be able to happen in log(n) time given state_id which in turn is found in log(n) time?

    Read the article

  • Order by is not working

    - by coure06
    With Results as ( SELECT Top(100) percent ROW_NUMBER() over (Order by (select 1)) as RowNumber, Ad.Date, Title FROM Ad inner join Job on Ad.Id = Job.AdId Order by case When @sortCol='Date' and @sortDir='ASC' Then Date End ASC, case When @sortCol='Date' and @sortDir='DESC' Then Date End DESC ) Select * from Results Where RowNumber BETWEEN @FirstRow AND @LastRow END Whatever is passed in @sortDir and @sortCol it does not work.What am I doing wrong?

    Read the article

  • sql query in the SqlDataAdapter()

    - by syedsaleemss
    Im using c# .net windows form application. I have loaded names of all the tables present in a database into a combobox. Now i need to display the contents of the selected table name. Normally we use SqlDataAdapter adp= new SqlDataAdapter("Select * from employee", con); This works fine. but instead of explicitly giving table name i.e employee i need to set it to combobox1.selected item. I have given like this its not working: string filename= combobox1.selecteditem; SqlDataAdapter adp= new SqlDataAdapter("Select * from filename", con); How can I select filename dynamically?

    Read the article

  • Installing databases after installation of server.

    - by claws
    Hello, I my software I need the client to install a database server (MySQL in my case). I'm deploying the setup and making user install it like a pre-requisite. After installing the DBMS server. I need to setup databases (that I created) on the client machine. How to do this automatically (as part of installation.)?

    Read the article

  • How to retrieve last primary Id from mdb's table?

    - by William
    I got table with next columns: Id, Name, Age, Class I am trying to insert new row in db like this: INSERT INTO MyTable (Name, Age, Class) VALUES (@name, @age, @class) And get an exeption: "Index or primary key cannot contain a Null value." The question is how to add a new row without knowing next primary Id, or maybe there is a way to get this Id from the table with the help of another query ?

    Read the article

  • Error using iif in ms access query

    - by naveen
    I am trying to fire this query in MS Access SELECT file_number, IIF(invoice_type='Spent on Coding',SUM(CINT(invoice_amount)), 0) as CodingExpense FROM invoice GROUP BY file_number I am getting this error Error in list of function arguments: '=' not recognized. Unable to parse query text. I tried replacing IIF with SWITCH to no avail. What's wrong with my query and how to correct this?

    Read the article

  • Textbox is disabled after adding text dynamically in codebehind

    - by user1761348
    Can't quite work out what is happening but The background is that I am dynamically adding table rows in a web page and some of the cells hold controls such as dropdowns etc. One of the columns pulls a size into it. However the column I am having issues with is the next column which takes the text from teh previous dropdown and shows the appropriate price. On doing htis however the textbox which is being created appears to turn into a label as I cannot select or adjust the text that has been put in there. var gotPrice =(from a in getPrice.Sizes where a.Size1 == Size.SelectedValue select a).First(); TextBox Price = new TextBox(); Price.Width = 100; PriceField.Controls.Add(Price); PriceField.Text = gotPrice.RackRate.ToString(); I have tried then calling .Enabled but still the text box is not editable. any help appreciated.

    Read the article

  • MySQL query using multiple criteria from checkboxes

    - by jungle_programmer
    I would like to do a multiple search query usig multiple checkboxes which represent particular textboxes. How do i create a mysql query which will be filtering the checked and unchecked checkboxes (probably using if statements)? The query should be able to filter the checked and ucnchecked boxes and query them using the AND condition. Thanks

    Read the article

  • Is it a Good Practice to Add two Conditions when using a JOIN keyword?

    - by Raúl Roa
    I'd like to know if having to conditionals when using a JOIN keyword is a good practice. I'm trying to filter this resultset by date but I'm unable to get all the branches listed even if there's no expense or income for a date using a WHERE clause. Is there a better way of doing this, if so how? SELECT Branches.Name ,SUM(Expenses.Amount) AS Expenses ,SUM(Incomes.Amount) AS Incomes FROM Branches LEFT JOIN Expenses ON Branches.Id = Expenses.BranchId AND Expenses.Date = '3/11/2010' LEFT JOIN Incomes ON Branches.Id = Incomes.BranchId AND Incomes.Date = '3/11/2010' GROUP BY Branches.Name

    Read the article

  • Trying to verify understanding of Foreign Keys MSSQL

    - by msarchet
    So I'm working on just a learning project to expose myself to doing some things I do not get to do at work. I'm just making a simple bug and case tracking app (I know there are a million this is just to work with some tools I don't get to). So I was designing my database and realized I've never actually used Foreign Keys before in any of my projects, I've used them before but never actually setting up a column as a FK. So I've designed my database as follows, which I think is close to correct (at least for the initial layout). However When I try to add the FK's to the linking Tables I get an error saying, "The tables present in the relationship must have the same number of columns". I'm doing this by in SQLSMS by going to the Keys 'folder' and adding a FK. Is there something that I am doing wrong here, I don't understand why the tables would have to have the same number of columns for me to add a FK relationship between the tables?

    Read the article

  • Change column names of a cube action as they appear in Visual Studio

    - by hermann
    the title pretty much says it all. I have a cube with data in it and I have yet to find a way to change the column names. They appear in a very ugly manner like [cubeName].[$dimension.columnName]. I have tried everything I know and anything I found on the web but nothing seems to be working. What I tried to do in most cases is create an Action in the Actions tab and write some MDX query language in there. No results whatsoever. As if the action is never run. Does anyone know how to do this? I've spent about 3 days trying to figure this out. Thank you.

    Read the article

  • Connecting to MSSQL Express in silverlight 4 appl, the db doesn't shows up in Management Studio Expr

    - by Gabriel
    I'm using MSSQLExpress named instance in my Silverlight 4 application. The database located in the web application data folder. I attached the db via VS2010. The program works, but the db doesn't show up in Management Studio Express. If I delete the connection from within VS2010, and Try to attach to db via Management Studio Express, on writes, that the database with same the name already exists. Why the database connected via VS2010 doesn't show up in Management Studio Express? Thanks in advance Gabor

    Read the article

  • Optimize "not in" query

    - by Vasu
    Please help optimize this query: SELECT ts.SiteId, COUNT(ts.SiteId) AS Count FROM ts WHERE ts.SiteId not in (SELECT ts.SiteId FROM ts WHERE ts.uniqueid = 'xxx') GROUP BY ts.SiteId ORDER BY Count DESC

    Read the article

  • Using Report (Reporting Services) parameter values in ASP.NET page

    - by noup
    I have a report (Reporting Services) integrated into an ASP.NET that shows dropdownlists to select report parameter values. The dropdownlists are populated using direct database selects, though I see the report RDL files do contain the paramter values and datasets as defined in the report designer. Is it possible to obtain the report parameters "available values" in ASP.NET to populate the dropdownlists? This would avoid some code duplication. Update If the parameter doesn't use a query for available values, the following works: foreach (ValidValue value in this.ReportViewerControl.ServerReport.GetParameters()["myParameter"].ValidValues) { this.DropDownListControl.Items.Add(new ListItem(value.Label, value.Value)); } Still haven't found a way to access report datasets though...

    Read the article

  • Query for Joining Two Tables With Possible Multiple Mapping

    - by Dharmendra Mohapatra
    First_table srno wono Actual_Start_Date Actual_End_Date 1 31 2012-06-02 2012-06-05 2 32 2012-06-05 2012-06-22 3 33 2012-06-11 2012-06-23 4 34 2012-06-23 2012-06-30 5 A-2 2012-06-24 2012-06-25 6 BU 2012-06-24 2012-06-26 7 40 2012-06-25 2012-06-27 second_table srno wono Base_start_date Base_end_date uploadhistoryid 1 31 2012-06-05 2012-06-05 1 2 32 2012-06-11 2012-06-12 2 3 32 2012-06-15 2012-06-17 3 4 32 2012-06-18 2012-06-20 4 5 33 2012-06-22 2012-06-25 5 5 33 2012-06-23 2012-06-25 5 Result Required SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER PROCEDURE [dbo].[Reports_Subanalysis] ( @WONo VARCHAR(20) ) AS BEGIN SELECT 'SAT' AS stage, s.Base_start_date AS start_date, s.Base_end_date AS end_date, f.Actual_Start_Date AS Actual_Start_Date, f.Actual_end_Date AS Actual_End_Date FROM First_table f, second_table B WHERE A.wOno=B.nOno AND f.uploadhistoryid in (SELECT min(uploadhistoryid) FROM second_table C WHERE f.wono = C.wono) AND b.wono=@WONo END when I pass '32' Result stage start_date end_date Actual_Start_Date Actual_End_Date SAT 2012-06-11 2012-06-12 2012-06-05 2012-06-05 how Can I get the result like this when I pass non matching value like 'BU' stage start_date end_date Actual_Start_Date Actual_End_Date SAT NULL NULL 2012-06-24 2012-06-26 What modification do I need in my routine?

    Read the article

  • How to convert full outer join query to O-R query?

    - by Kugel
    I'm converting relational database into object-relational in Oracle. I have a query that uses full outer join in the old one. Is it possible to write the same query for O-R database without explicitly using full outer join? For normal inner join it simple, I just use dot notation together with ref/deref. I'm interested in this in general so let's say the relational query is: select a.attr, b.attr from a full outer join b on (a.fk = b.pk); I want to know if it's a good idea to do it this way: select a.attr, b.attr from a_obj a full outer join b_obj b on (a.b_ref = ref(b));

    Read the article

  • How to 'insert if not exists' in MySQL?

    - by warren
    I started by googling, and found this article which talks about mutex tables. I have a table with ~14 million records. If I want to add more data in the same format, is there a way to ensure the record I want to insert does not already exist without using a pair of queries (ie, one query to check and one to insert is the result set is empty)? Does a unique constraint on a field guarantee the insert will fail if it's already there? It seems that with merely a constraint, when I issue the insert via php, the script croaks.

    Read the article

  • integrating jquery with AJAX using MVC for ddl/html.dropdownlist

    - by needhelp
    the situation: a user on the page in question selects a category from a dropdown which then dynamically populates all the users of that category in a second dropdown beside it. all the data is being retrieved using LinqtoSQL and i was wondering if this can be done a) using html.dropdownlist in a strongly typed view? b) using jquery to trigger the ajax request on selected index change instead of a 'populate' button trigger? sorry i dont have code as what i was trying really wasnt working at all. I am having trouble with how to do it conceptually and programatically! will appreciate any links to examples etc greatly! thanks in advance! EDIT: this is kind of what i was trying to achieve.. first the ViewPage: <script type="text/javascript"> $(document).ready function TypeSearch() { $.getJSON("/Home/Type", null, function(data) { //dont know what to do here }); } </script> <p> <label for="userType">userType:</label> <%= Html.DropDownList("userType") %> <%= Html.ValidationMessage("userType", "*") %> <input type="submit" runat="server" onclick="TypeSearch()" /> <label for="accountNumber">accountNumber:</label> <%= Html.DropDownList("accountNumber") %> <%= Html.ValidationMessage("accountNumber", "*") %> </p> Then home controller action: public ActionResult Type() { string accountType = dropdownvalue; List<Account> accounts = userRep.GetAccountsByType(accountType).ToList(); return Json(accounts); }

    Read the article

  • Porting Oracle Date Manipulation

    - by Grasper
    I need to port this following from Oracle syntax to Postgresql. Both FLO_END_DT and FLO_START_DATE are of type DATE in Oracle, and TIMESTAMP WITHOUT TIME ZONE in Postgresql: SELECT TRUNC( TO_CHAR(ROUND(( FL.FLO_END_DT- FL.FLO_START_DT)* 24), '9999D99'),2) FROM FLOWS FL I am not familiar enough with Oracle to know what it is trying to accomplish. Any ideas?

    Read the article

  • Sql Query to get total rows and total rows matching specific condition

    - by mrNepal
    OK, Here is what my table looks like ------------------------------------------------ id type ----------------------------------------------- 1 a 2 b 3 a 4 c 5 c 7 a 8 a ------------------------------------------------ Now, I need a query that can give me this output... ----------------------------------------------------------------- count(*) | count(type=a) | count(type=b) | count(type=c) ----------------------------------------------------------------- 8 4 1 3 ------------------------------------------------------------------ I only know to get the total set using count(*), but how to do the remaining

    Read the article

< Previous Page | 667 668 669 670 671 672 673 674 675 676 677 678  | Next Page >