Search Results

Search found 33911 results on 1357 pages for 'mysql select'.

Page 115/1357 | < Previous Page | 111 112 113 114 115 116 117 118 119 120 121 122  | Next Page >

  • mysql conditional query - complicated!

    - by emre
    i want to get distinct values for a field, let say: field1... ok this needs a query like: "select distint(field1) from table" however for some records, field1 is empty and there is another column that is an alternative to field1, which is field2. now; for the records where field1 is empty i need to use the value of field2. i think i need sort of a conditional select statement with if control something like: "select distinct( (if(field1!='') field1 else field2) ) from table" but i have no idea on how to write it. any help is appricated...

    Read the article

  • Selecting two field in MySQL with PHP

    - by Crays
    Hi guys, i'm relatively new to php and mysql and would like to know how to select two value in mysql with php. What i have is $query = sprintf("SELECT COUNT(id) FROM table WHERE UPPER(username) = UPPER('%s') AND password='%s'"... in this case, i'm only selecting and count if the id exist and i use list($count) = mysql_fetch_row($result); if($count == 1) and by using cookies, i would like to retrieve two value from the database, namely user (the user's name) and power (which has value of 1,2 or 3, indicating the menu they would be able to see) basically it is to differentiate if you're admin or normal user, but i wonder if i could do SELECT COUNT(id) AND power FROM table WHERE ... is this possible? or is there any other way? Please guide me, thanks.

    Read the article

  • MySQL count problem

    - by Skuja
    I have 3 tables users(id,name),groups(id,name) and users_groups(user_id,group_id). users and groups have many to many relationship, so the third one is for storing users and groups relations. I would like to select all the data from groups with user count in each group. So far I came up with this: SELECT groups.*, COUNT(users_groups.user_id) AS user_count FROM groups LEFT JOIN users_groups ON users_groups.group_id = groups.id The problem is that query result is not returning any of groups which has no users (users_groups doesnt have any records with group_id of those groups). How should I create my query to select all the groups and they user count, or user count as 0 if there are no users for that group?

    Read the article

  • MySQL - Join as zero if record Not IN

    - by Zurahn
    To explain by example, take two tables, A and B Table A id foo 1 x 2 y 3 z Table B id aid bar 1 3 50 2 1 100 An example join SELECT foo, bar FROM a, b WHERE a.id = b.aid; Garners a result of foo bar z 50 x 100 What I would like to do is get all values of foo and for any instances where there isn't a corresponding bar value, return 0 for that column. My best guess was something along the lines of SELECT foo, bar AS br FROM a, b WHERE a.id = b.aid OR a.id NOT IN (SELECT aid FROM b); But that returns duplicates and non-zero values for bar. Possible?

    Read the article

  • MySQL - how to retrieve columns in same row as the values returned by min/mx

    - by Gala101
    I couldn't frame the Question's title properly.. Suppose a table of weekly movie Earnings as below, MovieName MovieGross WeekofYear Year So how do I get the names of top grossers for each week of this year If I do select MovieName , Max(MovieGross) , WeekofYear from earnings where year = 2010 group by WeekofYear; Then obviously query wont run, select Max(MovieName) , Max(MovieGross) , WeekofYear from earnings where year = 2010 group by WeekofYear; would just give movies starting with lowest alphabet Is using group-concat and then substring-index the only option here? select substring_index(group_concat(MovieName order by MovieGross desc),',',1), Max(MovieGross) , WeekofYear from earnings where year = 2010 group by WeekofYear ; Seems clumsy.. Is there any better way of acieveing this?

    Read the article

  • Help needed with simple mysql group by query

    - by Jack
    This query fails when I add the line shown... :BEGIN FAIL: I have this so far Select Companyid, count(*) as cnt from mytable where State is not null and cnt = 1 <------------------------- FAIL group by CompanyID :END FAIL: Any way to do this? Here's a long winded background if it'll help.... I have a single table query. here's a sample of the table: CompanyID, State 1,OH 1,IL 1,NY 2,IL 3,NY 3,OH 4,NY 5,CA 5,WA I want a query that'll return something like this: 2,IL 4,NY I have this so far Select Companyid, count(*) as cnt from mytable where State is not null group by CompanyID This gives me a count of the number of records for each company. IE: 1,3 2,1 3,2 4,1 5,2 Now I want to filter the above list to just the two records with one result. I tried adding another where clause, but it failed: BEGIN FAIL: I have this so far Select Companyid, count(*) as cnt from mytable where State is not null and cnt = 1 <-------------------- FAIL group by CompanyID END FAIL:

    Read the article

  • Convert search from SQL Server to MySQL

    - by HAJJAJ
    hi, everyone. i need to convert this one from SQL Server into MySQL IF IsNull(@SearchText, '') <> '' BEGIN SET @SearchText = '%' + @SearchText + '%' SELECT NewsID,DeptID,DeptName,Title,Details ,NewsDate,img FROM @tbSearchtextTb WHERE IsNull(Title,'')+IsNull(Details,'') LIKE @SearchText END this code will search fro my search word in this columns: Title, Details. i tried to convert this line but i had lots of errors: these are my unsuccessful attempts IF ISNULL(SearchText,'') <> '' THEN SELECT CatID,CatTitle,CatDescription,CatTitleAr,CatDescriptionAr,PictureID,Published,DisplayOrder,CreatedOn FROM tmp WHERE CatTitle + CatDescription + CatTitleAr + CatDescriptionAr LIKE $SearchText; and this one IF $SearchText IS NOT NULL THEN SELECT CatID,CatTitle,CatDescription,CatTitleAr,CatDescriptionAr,PictureID,Published,DisplayOrder,CreatedOn FROM tmp WHERE ISNULL(CatTitle,'') +ISNULL(CatDescription ,'') +ISNULL(CatTitleAr ,'') +ISNULL(CatDescriptionAr,'') LIKE $SearchText; and many many other ways but i could not find any. so if you know please let me know, thanks and best regards.

    Read the article

  • Mysql query help needed

    - by Me-and-Coding
    Hi, i have two tables category and hotels where category.id should be equal to hotels.catid. Now how do i select 3 rows from each different category from the hotels table. I have this query: select h.* from hotels h inner join category c on h.catid = c.id order by h.catid, h.hid this selects all records, but i want to select three rows per different category so in all it should return 9 rows with 3 rows for each category. If this can not be done in mysql, you could also suggest php code please. Thanks

    Read the article

  • mysql query that has array

    - by Xainee Khan
    //get all id's of ur friend that has installed your application $friend_pics=$facebook->api( array( 'method' => 'fql.query', 'query' => "SELECT uid FROM user WHERE uid IN(SELECT uid2 from friend WHERE uid1='$user') AND is_app_user = 1" ) ); // this query work fine //your top10 friends in app $result="SELECT * FROM fb_user WHERE user_id IN($friend_pics) ORDER BY oldscore DESC LIMIT 0,10"; db_execute($result); i want to retrive ten top scorer from my database stored in oldscore but in my second query the array name $friend_pics is not working i guess,plz help me thanks

    Read the article

  • Ordering by multiple columns in mysql with subquery

    - by Scarface
    Hey guys I have a query that selects data and organizes but not in the correct order. What I want to do is select all the comments for a user in that week and sort it by each topic, then sort the cluster by the latest timestamp of each comment in their respective cluster. My current query selects the right data, but in seemingly random order. Does anyone have any ideas? select * from ( SELECT topic.topic_title, topic.topic_id FROM comments JOIN topic ON topic.topic_id=comments.topic_id WHERE comments.user='$user' AND comments.timestamp>$week order by comments.timestamp desc) derived_table group by topic_id

    Read the article

  • MySQL : delete from table that is used in the where clause

    - by Eric
    I am writing a small script to synchronize 2 MySQL tables ( t1 to be 'mirrored' to t2 ) In a step I would like to delete rows inside t2 that has been delete in t1 with the same id. I tried this query : delete from t2 where t2.id in ( select t2.id left join t1 on (t1.id=t2.id) where t1.id is null ) But Mysql forbid me to use t2 in the same time in the delete and in the select (sound logical by the way) Of course, I can split the query into 2 queries : first select IDs, then delete rows with these IDs. My question : do you have a cleaner way to delete row from t2 that does not exist anymore in t1 ? with one query only ?

    Read the article

  • PHP MYSQL query result "RANKING"

    - by fkessler
    Hi, I need to get a list of users Ranking by points and from my command line (MySQL) is was able to generate the necessary code: SET @rank=0; SELECT rank, iduser, pontos FROM ( SELECT @rank:=@rank+1 AS rank, SUM(points.points) AS pontos, points.iduser, users.name, users.idade FROM points INNER JOIN users ON (points.iduser = users.id) WHERE (users.idade >= %s) AND (users.idade <= %s) GROUP BY points.iduser ORDER BY pontos DESC) AS totals WHERE iduser = %s The problem is that I need this to run on AMFPHP and I´ve tested it in a test PHP file and seems that I can´t use the SET and SELECT in the same "mysql_query". I´ve looked and some used to mysql_query to do this (I´ve tested it and it works), but can I trust this to be effective and error free? Does it work like in MySQL transactions or setting the @rank in a seperated query may cause unexpected results?

    Read the article

  • [MySQL, InnoDb] Rating place

    - by Pavel
    I'm trying to generate rating place table using following receipt http://stackoverflow.com/questions/1776821/assign-places-in-the-rating-mysql-php but my database is high loaded. I tried not to create table, but use MEMORY TABLE and update it using following SQL query insert into tops (uid) select uid from users order by exp desc; but got the following MySQL error Deadlock found when trying to get lock; try restarting transaction because there are too many queries until SQL select is being executed. How to solve this problem? P.S. CREATE TABLE tops as SELECT work almost fine except high server load... up to load average: 50 if tops are non-memory table. My table users has near 4.5 millions of rows. Thanks for any advices.

    Read the article

  • MySQL inner join different results

    - by Darryl at NetHosted
    I am trying to work out why the following two queries return different results: SELECT DISTINCT i.id, i.date FROM `tblinvoices` i INNER JOIN `tblinvoiceitems` it ON it.userid=i.userid INNER JOIN `tblcustomfieldsvalues` cf ON it.relid=cf.relid WHERE i.`tax` = 0 AND i.`date` BETWEEN '2012-07-01' AND '2012-09-31' and SELECT DISTINCT i.id, i.date FROM `tblinvoices` i WHERE i.`tax` = 0 AND i.`date` BETWEEN '2012-07-01' AND '2012-09-31' Obviously the difference is the inner join here, but I don't understand why the one with the inner join is returning less results than the one without it, I would have thought since I didn't do any cross table references they should return the same results. The final query I am working towards is SELECT DISTINCT i.id, i.date FROM `tblinvoices` i INNER JOIN `tblinvoiceitems` it ON it.userid=i.userid INNER JOIN `tblcustomfieldsvalues` cf ON it.relid=cf.relid WHERE cf.`fieldid` =5 AND cf.`value` REGEXP '[A-Za-z]' AND i.`tax` = 0 AND i.`date` BETWEEN '2012-07-01' AND '2012-09-31' But because of the different results that seem incorrect when I add the inner join (it removes some results that should be valid) it's not working at present, thanks.

    Read the article

  • Show parts of the result of an SQL statement using PHP

    - by mouthpiec
    I have an SQL query which returns a set of data (around 40-50 tuples). I would like to display the results 5 at a time on an HTML page using PHP. I already managed to have the right SELECT statement, but i am having problems to display the results 5 by 5 using a "more" button. Can you please help? Note that every time i call the query, the data is being randomized, so it is not possible to set limits and call the query again. I have to find the method to store the results somewhere, and then show them 5 by 5.

    Read the article

  • MySQL "IS IN" equivalent?

    - by nute
    A while ago I worked on a MS-SQL project and I remember a "IS IN" thing. I tried it on a MySQL project and it did not work. Is there an equivalent? Workaround? Here is the full query I am trying to run: SELECT * FROM product_product, product_viewhistory, product_xref WHERE ( (product_viewhistory.productId = product_xref.product_id_1 AND product_xref.product_id_2 = product_product.id) OR (product_viewhistory.productId = product_xref.product_id_2 AND product_xref.product_id_1 = product_product.id) ) AND product_product.id IS IN (SELECT DISTINCT pvh.productId FROM product_viewhistory AS pvh WHERE pvh.cookieId = :cookieId ORDER BY pvh.viewTime DESC LIMIT 10) AND product_viewhistory.cookieId = :cookieId AND product_product.outofstock='N' ORDER BY product_xref.hits DESC LIMIT 10 It's pretty big ... but the part I am interested in is: AND product_product.id IS IN (SELECT DISTINCT pvh.productId FROM product_viewhistory AS pvh WHERE pvh.cookieId = :cookieId ORDER BY pvh.viewTime DESC LIMIT 10) Which basically says I want the products to be in the "top 10" of that sub-query. How would you achieve that with MySQL (while trying to be efficient)?

    Read the article

  • convert mysql code to codeigniter

    - by Jethro Tamares Doble
    How can i convert this code into an acceptable codeigniter code: mysql_select_db($database_connection_ched, $connection_ched); $query_Institutions = "SELECT * FROM tb_institutional_profile ORDER BY tb_institutional_profile.institution_name ASC"; $Institutions = mysql_query($query_Institutions, $connection_ched) or die(mysql_error()); $row_Institutions = mysql_fetch_assoc($Institutions); $totalRows_Institutions = mysql_num_rows($Institutions); <td width="192"><select name="institution_id"> <?php do { <option value="<?php echo $row_Institutions['institution_id']?>" ><?php echo $row_Institutions['institution_name']?></option> <?php } while ($row_Institutions = mysql_fetch_assoc($Institutions)); ?> </select></td>

    Read the article

  • Union - Same table, excluding previous results MySQL

    - by user82302124
    I'm trying to write a query that will: Run a query, give me (x) number of rows (limit 4) If that query didn't give me the 4 I need, run a second query limit 4-(x) and exclude the ids from the first query A third query that acts like the second I have this: (SELECT *, 1 as SORY_QUERY1 FROM xbamZ where state = 'Minnesota' and industry = 'Miscellaneous' and id != '229' limit 4) UNION (SELECT *, 2 FROM xbamZ where state = 'Minnesota' limit 2) UNION (SELECT *, 3 FROM xbamZ where industry = 'Miscellaneous' limit 1) How (or is?) do I do that? Am I close? This query gives me duplicates

    Read the article

  • MYSQL: COUNT with GROUP BY, LEFT JOIN and WHERE clause doesn't return zero values

    - by Paul Norman
    Hi guys, thanks in advance for any help on this topic! I'm sure this has a very simply answer, but I can't seem to find it (not sure what to search on!). A standard count / group by query may look like this: SELECT COUNT(`t2`.`name`) FROM `table_1` `t1` LEFT JOIN `table_2` `t2` ON `t1`.`key_id` = `t2`.`key_id` GROUP BY `t1`.`any_col` and this works as expected, returning 0 if no rows are found. So does: SELECT COUNT(`t2`.`name`) FROM `table_1` `t1` LEFT JOIN `table_2` `t2` ON `t1`.`key_id` = `t2`.`key_id` WHERE `t1`.`another_column` = 123 However: SELECT COUNT(`t2`.`name`) FROM `table_1` `t1` LEFT JOIN `table_2` `t2` ON `t1`.`key_id` = `t2`.`key_id` WHERE `t1`.`another_column` = 123 GROUP BY `t1`.`any_col` only works if there is at least one row in table_1 and fails miserably returning an empty result set if there are zero rows. I would really like this to return 0! Anyone enlighten me on this? Beer can be provided in exchange if you are in London ;-)

    Read the article

  • MySQL Check if table exists error

    - by Max van Heiningen
    I'm trying to check if a table already exists, however I can't get this working. IF EXISTS (SELECT 1 FROM sysobjects WHERE xtype='u' AND name='tablename') SELECT 'table already exists.' ELSE BEGIN CREATE TABLE Week_( id INT(10)AUTO_INCREMENT PRIMARY KEY (id), ... ...) END; My error: #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IF EXISTS (SELECT 1 FROM sysobjects WHERE xtype='u' AND name' at line 1 Can someone help me with this? Thanks in advance

    Read the article

  • MySQL -- How to do this better?

    - by Andrew
    $activeQuery = mysql_query("SELECT count(`status`) AS `active` FROM `assignments` WHERE `user` = $user_id AND `status` = 0"); $active = mysql_fetch_assoc($activeQuery); $failedQuery = mysql_query("SELECT count(`status`) AS `failed` FROM `assignments` WHERE `user` = $user_id AND `status` = 1"); $failed = mysql_fetch_assoc($failedQuery); $completedQuery = mysql_query("SELECT count(`status`) AS `completed` FROM `assignments` WHERE `user` = $user_id AND `status` = 2"); $completed = mysql_fetch_assoc($completedQuery); There has to be a better way to do that, right? I don't know how much I need to elaborate as you can see what I'm trying to do, but is there any way to do all of that in one query? I need to be able to output the active, failed, and completed assignments, preferably in one query.

    Read the article

  • Confusing alias mySQL

    - by Taylor
    I keep getting the same number outputted for the Total Sales, Minimum Sale, Largest Sale and Average Sale. The Total Invoices is working perfectly, but I cant seem to figure out how to fix the other ones. Here's the query: SELECT SUM( b.`Number of Invoices`) AS `Total Invoices`, SUM( b.`Total Customer Purchases`) AS `Total Sales`, MIN( b.`Total Customer Purchases`) AS `Minimum Sale`, MAX( b.`Total Customer Purchases`) AS `Largest Sale`, AVG( b.`Total Customer Purchases`) AS `Average Sale` FROM (SELECT a.CUS_CODE, COUNT(a.`Number of Invoices`) AS `Number of Invoices`, SUM(a.`Invoice Total`) AS `Total Customer Purchases` FROM ( SELECT CUS_CODE, LINE.INV_NUMBER AS `Number of Invoices`, SUM(LINE.LINE_UNITS * LINE.LINE_PRICE) AS `Invoice Total` FROM `ttriggs`.`INVOICE`, `ttriggs`.`LINE` WHERE INVOICE.INV_NUMBER = LINE.INV_NUMBER GROUP BY CUS_CODE, LINE.INV_NUMBER ) a ) b GROUP BY b.CUS_CODE; Heres the database diagram https://www.dropbox.com/s/b8cy5l29jwh8lyv/1_edit.jpg Subquery generates: CUS_CODE 10011 Number of Invoices 8 Total Customer Purchases 1119.03 Any help is greatly appreciated, Thanks!

    Read the article

  • MySQL column names and aliases

    - by user329820
    hi, I have read that after select we use column-names but I have found a statement that was like this: SELECT 'A' FROM T WHERE A = NULL; would you lease help me? thanks (A is a column- name here?) my DBMS is MySQL EDITED : the exact question is this that: Will the above statement produce a row (select all that apply)? Notice that ANSI_NULLS is OFF. I want to know that the above statement will work? because some of you said that we should write IS NULL instead of =null

    Read the article

  • get value from database based on array in codeigniter

    - by Developer
    I have an array $user = array([0]=>1 [1]=>2 [2]=>3) which contains id's of certain users. I need to get the countries of these users from database. foreach($userid as $user){ $this->db->select('country'); $this->db->where('user_id',$user); $this->db->from('company'); $usercountry = $this->db->get(); $count = $usercountry->row(); $country = $count->country; } Suppose user1 has country ES, user2 has IN, user3 has US, user4 has UK. then if array contains 1,2,3. Then i need to get the countries ES,IN,US.

    Read the article

  • mysql result for pagination

    - by Reteras Remus
    The query is: SELECT * FROM `news` ORDER BY `id` LIMIT ($curr_page * 5), ( ($curr_page * 5) + 5 ) Where $curr_page is a php variable which is getting a value from $_GET['page'] I want to make a pagination (5 news on each page), but I don't know why the mysql is returning me extra values. On the first page the result ok: $curr_page = 0 The query would be: SELECT * FROM `news` ORDER BY `id` LIMIT 0, 5 But on the second page, the result from the query is adding extra news, 10 instead of 5. The query on the second page: SELECT * FROM `news` ORDER BY `id` LIMIT 5, 10 Whats wrong? Why the result has 10 values instead of 5? Thank you!

    Read the article

< Previous Page | 111 112 113 114 115 116 117 118 119 120 121 122  | Next Page >